FROM golang:1.24.1-alpine3.21 AS build ARG HUGO_BUILD_TAGS=extended ARG CGO=1 ENV CGO_ENABLED=${CGO} ENV GOOS=linux ENV GO111MODULE=on ENV HUGO_VERSION=v0.145.0 ENV MAGE_VERSION=v1.15.0 WORKDIR /go/src/github.com/gohugoio/hugo RUN apk update &&\ # gcc/g++ are required to build SASS libraries for extended version apk add --no-cache curl gcc g++ musl-dev git &&\ download_url="https://api.github.com/repos/gohugoio/hugo/tarball/${HUGO_VERSION}" &&\ echo "$download_url" &&\ curl -sL "$download_url" -o /tmp/hugo.tgz &&\ tar xf /tmp/hugo.tgz -C . --strip-components=1 &&\ go install github.com/magefile/mage@${MAGE_VERSION} &&\ mage hugo &&\ mage install &&\ cd / &&\ rm -rf /tmp/hugo.tgz /go/src/github.com/gohugoio/hugo/* FROM asciidoctor/docker-asciidoctor:1.82 COPY --from=build /go/bin/hugo /usr/bin/hugo RUN gem install --no-document asciidoctor-html5s &&\ apk update &&\ apk upgrade &&\ apk add --no-cache \ ca-certificates \ git \ libc6-compat \ libstdc++ \ nodejs \ &&\ /usr/bin/hugo version &&\ rm -rf /var/cache/apk/* # Expose port for live server EXPOSE 1313 ENTRYPOINT ["/usr/bin/hugo"] CMD [""]