Dockerfile 756 B

12345678910111213141516171819
  1. # syntax=docker/dockerfile:1
  2. FROM golang:1.21-alpine AS builder
  3. WORKDIR /go/src
  4. ENV CGO_ENABLED=0
  5. RUN apk --no-cache add git && \
  6. git clone https://github.com/XrayR-project/XrayR.git && cd XrayR/main && \
  7. go mod download && \
  8. go env -w GOFLAGS=-buildvcs=false && \
  9. go build -v -o XrayR -trimpath -ldflags "-s -w -buildid=" && \
  10. mkdir -p /go/src/XrayR/Release && mv config.yml.example config.yml && \
  11. mv *.yml *.json *.dat rulelist XrayR /go/src/XrayR/Release
  12. FROM alpine
  13. RUN apk --update --no-cache add tzdata ca-certificates && \
  14. cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
  15. mkdir /etc/XrayR/
  16. COPY --from=builder /go/src/XrayR/Release /usr/local/bin
  17. ENTRYPOINT [ "XrayR", "--config", "/etc/XrayR/config.yml" ]