github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/build/Dockerfile (about) 1 FROM alpine:3.12 2 # Some ENV variables 3 4 ENV PATH="/hkserver/bin:${PATH}" 5 ARG PUID=2000 6 ARG PGID=2000 7 8 # Install some needed packages 9 RUN apk add --no-cache \ 10 ca-certificates \ 11 curl \ 12 libc6-compat \ 13 libffi-dev \ 14 linux-headers \ 15 mailcap \ 16 netcat-openbsd \ 17 xmlsec-dev \ 18 tzdata \ 19 wv \ 20 poppler-utils \ 21 tidyhtml \ 22 && rm -rf /tmp/* 23 24 COPY dist/hkserver /hkserver 25 26 # Get Server 27 RUN mkdir -p /hkserver/data /hkserver/plugins /hkserver/client/plugins \ 28 && addgroup -g ${PGID} hkserver \ 29 && adduser -D -u ${PUID} -G hkserver -h /hkserver -D hkserver \ 30 && chown -R hkserver:hkserver /hkserver /hkserver/plugins /hkserver/client/plugins 31 32 USER hkserver 33 34 #Healthcheck to make sure container is ready 35 HEALTHCHECK --interval=30s --timeout=10s \ 36 CMD curl -f http://localhost:8065/api/v4/system/ping || exit 1 37 38 # Copy client 39 COPY build/sample_client/ /hkserver/client 40 41 # Configure entrypoint and command 42 COPY build/entrypoint.sh / 43 ENTRYPOINT ["/entrypoint.sh"] 44 WORKDIR /hkserver 45 CMD ["hkserver"] 46 47 EXPOSE 8065 8067 8074 8075 48 49 # Declare volumes for mount point directories 50 VOLUME ["/hkserver/data", "/hkserver/logs", "/hkserver/config", "/hkserver/plugins", "/hkserver/client/plugins"]