123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- FROM arm32v7/golang:1.14-alpine3.14 AS binarybuilder
- RUN apk --no-cache --no-progress add --virtual \
- build-deps \
- build-base \
- git \
- linux-pam-dev
- WORKDIR /gogs.io/gogs
- COPY . .
- RUN make build TAGS="cert pam"
- FROM arm32v7/alpine:3.14
- RUN wget https://github.com/tianon/gosu/releases/download/1.12/gosu-armhf -O /usr/sbin/gosu \
- && chmod +x /usr/sbin/gosu \
- && echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
- && apk --no-cache --no-progress add \
- bash \
- ca-certificates \
- curl \
- git \
- linux-pam \
- openssh \
- s6 \
- shadow \
- socat \
- tzdata \
- rsync
- ENV GOGS_CUSTOM /data/gogs
- # Configure LibC Name Service
- COPY docker/nsswitch.conf /etc/nsswitch.conf
- WORKDIR /app/gogs
- COPY docker ./docker
- COPY --from=binarybuilder /gogs.io/gogs/gogs .
- RUN ./docker/finalize.sh
- # Configure Docker Container
- VOLUME ["/data", "/backup"]
- EXPOSE 22 3000
- HEALTHCHECK CMD (nc -z -w 3 localhost 22 && curl -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
- ENTRYPOINT ["/app/gogs/docker/start.sh"]
- CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]
|