github.com/ipfans/trojan-go@v0.11.0/Dockerfile (about) 1 FROM golang:alpine AS builder 2 WORKDIR / 3 ARG REF 4 RUN apk add git make &&\ 5 git clone https://github.com/ipfans/trojan-go.git 6 RUN if [[ -z "${REF}" ]]; then \ 7 echo "No specific commit provided, use the latest one." \ 8 ;else \ 9 echo "Use commit ${REF}" &&\ 10 cd trojan-go &&\ 11 git checkout ${REF} \ 12 ;fi 13 RUN cd trojan-go &&\ 14 make &&\ 15 wget https://github.com/v2fly/domain-list-community/raw/release/dlc.dat -O build/geosite.dat &&\ 16 wget https://github.com/v2fly/geoip/raw/release/geoip.dat -O build/geoip.dat &&\ 17 wget https://github.com/v2fly/geoip/raw/release/geoip-only-cn-private.dat -O build/geoip-only-cn-private.dat 18 19 FROM alpine 20 WORKDIR / 21 RUN apk add --no-cache tzdata ca-certificates 22 COPY --from=builder /trojan-go/build /usr/local/bin/ 23 COPY --from=builder /trojan-go/example/server.json /etc/trojan-go/config.json 24 25 ENTRYPOINT ["/usr/local/bin/trojan-go", "-config"] 26 CMD ["/etc/trojan-go/config.json"]