Files
proxy-xray/Dockerfile
Samuel Huang 3c5f962327
Some checks failed
docker-buildx-dev / multi-arch-dev (push) Has been cancelled
Trivy-scanning / Trivy-Scan (push) Has been cancelled
Bump to Xray-core v24.11.30
2024-12-01 15:02:10 +11:00

82 lines
2.8 KiB
Docker

FROM golang:1.23-alpine3.20 AS builder
ARG XRAY_VER='v24.11.30'
ARG QREC_VER='4.1.1'
RUN apk add --no-cache bash git build-base curl
WORKDIR /go/src/XTLS/Xray-core
RUN git clone https://github.com/XTLS/Xray-core.git . && \
git checkout ${XRAY_VER} && \
go build -o xray -trimpath -ldflags "-s -w -buildid=" ./main
RUN curl -sSLO https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat
RUN curl -sSLO https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat
RUN curl -sSLO https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/apple.china.conf
RUN curl -sSLO https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/google.china.conf
RUN curl -sSLO https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/bogus-nxdomain.china.conf
RUN curl -sSLO https://raw.githubusercontent.com/felixonmars/dnsmasq-china-list/master/accelerated-domains.china.conf
WORKDIR /tmp
RUN curl -sSLO https://fukuchi.org/works/qrencode/qrencode-${QREC_VER}.tar.gz && \
tar xvf qrencode-${QREC_VER}.tar.gz
WORKDIR /tmp/qrencode-${QREC_VER}
RUN ./configure --without-png && make install
WORKDIR /usr/local
RUN tar zcvf /tmp/qrencode.tar.gz bin lib share
FROM alpine:3.20
COPY --from=builder /go/src/XTLS/Xray-core/xray /usr/local/bin/
COPY --from=builder /go/src/XTLS/Xray-core/geosite.dat /usr/local/bin/
COPY --from=builder /go/src/XTLS/Xray-core/geoip.dat /usr/local/bin/
RUN mkdir -p /etc/dnsmasq.disable
COPY --from=builder /go/src/XTLS/Xray-core/apple.china.conf /etc/dnsmasq.disable/
COPY --from=builder /go/src/XTLS/Xray-core/google.china.conf /etc/dnsmasq.disable/
COPY --from=builder /go/src/XTLS/Xray-core/bogus-nxdomain.china.conf /etc/dnsmasq.disable/
COPY --from=builder /go/src/XTLS/Xray-core/accelerated-domains.china.conf /etc/dnsmasq.disable/
COPY --from=builder /tmp/qrencode.tar.gz /tmp/
WORKDIR /usr/local
RUN tar xvf /tmp/qrencode.tar.gz
RUN rm /tmp/qrencode.tar.gz
RUN apk --no-cache add bash openssl curl jq moreutils \
whois dnsmasq ca-certificates proxychains-ng
RUN sed -i "s/^socks4.*/socks5\t127.0.0.1 1080/g" /etc/proxychains/proxychains.conf
COPY proxy-lgp.sh /proxy-lgp.sh
COPY proxy-lgr.sh /proxy-lgr.sh
COPY proxy-lgt.sh /proxy-lgt.sh
COPY proxy-lsp.sh /proxy-lsp.sh
COPY proxy-lst.sh /proxy-lst.sh
COPY proxy-ltr.sh /proxy-ltr.sh
COPY proxy-ltt.sh /proxy-ltt.sh
COPY proxy-lwp.sh /proxy-lwp.sh
COPY proxy-lwt.sh /proxy-lwt.sh
COPY proxy-mtt.sh /proxy-mtt.sh
COPY proxy-mwp.sh /proxy-mwp.sh
COPY proxy-mwt.sh /proxy-mwt.sh
COPY proxy-ttt.sh /proxy-ttt.sh
COPY proxy-twp.sh /proxy-twp.sh
COPY proxy-twt.sh /proxy-twt.sh
COPY qrcode.sh /qrcode
COPY run.sh /run.sh
RUN chmod 755 /*.sh
RUN chmod 755 /qrcode
ENTRYPOINT ["/run.sh"]