Image tag | Base Image | Image size | Notes |
---|---|---|---|
peaceiris/hugo:v0.x.x |
alpine:3.13 |
74MB | Small image |
peaceiris/hugo:v0.x.x-mod |
golang:1.16-alpine3.13 |
367MB | Hugo Modules feature is available |
peaceiris/hugo:v0.x.x-full |
golang:1.16-alpine3.13 |
420MB | Hugo Modules and Node.js are available |
The image size is a result of the docker images
command.
- Hugo Modules:
hugo mod
- Hugo Modules and Node.js:
hugo mod
,node
andnpm
ghcr.io/peaceiris/hugo is also available.
Create your docker-compose.yml
like the following.
version: '3'
services:
hugo:
container_name: hugo
image: peaceiris/hugo:v0.x.x
# image: peaceiris/hugo:v0.x.x-mod # Hugo Modules
# image: peaceiris/hugo:v0.x.x-full # Hugo Modules and Node.js
ports:
- 1313:1313
volumes:
- ${PWD}:/src
command:
- server
- --bind=0.0.0.0
- --buildDrafts
# Run "hugo server"
docker-compose up
# Build site
docker-compose run --rm hugo ""
# Build site with flags
docker-compose run --rm hugo --gc --minify --cleanDestinationDir
# Run a command of Hugo
docker-compose run --rm hugo env
The Hugo Setup GitHub Action is recommended.