The source of nspawn.org: the landing page and the documentation of nspawn, the docker-like tool for systemd-nspawn machines, and of the image hub.
The site is built with Hugo and the Docsy theme, pulled in as a Hugo module together with its npm dependencies.
Nothing but Docker is needed on the host:
docker compose upOpen http://localhost:1313. Edits under content/, assets/ and layouts/
reload live. The first start installs the npm packages into node_modules/
and downloads the Hugo module and the Hugo binary; the caches live in a Docker
volume, so later starts are quick.
The container runs as uid and gid 1000 so that node_modules/ and the build
output belong to you. If yours differ, pass them along (the env form works in
bash, zsh and fish alike):
env SITE_UID=$(id -u) SITE_GID=$(id -g) docker compose up # bash, zsh
env SITE_UID=(id -u) SITE_GID=(id -g) docker compose up # fishInstall Node.js (see .nvmrc), npm, Go and git; Hugo itself comes from the
pinned hugo-extended npm package. Then:
npm run install:safe # lock-exact, script-free install
npm run serveRun Hugo through the npm scripts: they put the Dart Sass binary from
node_modules on the PATH, and a bare hugo invocation fails without it.
| Path | Contents |
|---|---|
hugo.yaml |
Site configuration: title, menu, footer links, search, theme parameters. |
content/en/ |
The pages. _index.md is the landing page, docs/ the documentation, about/ and community/ the other top-level pages. |
assets/scss/ |
Colors (_variables_project.scss) and project styles (_styles_project.scss). |
assets/icons/logo.svg |
The navbar logo; static/ holds the favicons. |
layouts/ |
Overrides of the theme's templates. |
packages/hugoautogen/ |
Generated manifest of the theme's npm dependencies; regenerated by npm run update:docsy:pack. |
tests/ |
Checks run by npm run test:site on the built site. |
Documentation pages are Markdown with front matter; weight orders them in the
sidebar and description is shown in the section index.
npm run build:productionwrites the site to public/. The build and deploy workflow builds the site
on every push and pull request and keeps the result as an artifact.
See the maintainer notes in CONTRIBUTING.md.
The site's code is under the Apache 2.0 license (see LICENSE), inherited from
the Docsy example project it started from. The content is licensed under
CC BY-NC 4.0.