123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- FROM golang:1.20 as builder
- ARG TARGETARCH
- ARG TARGETOS
- WORKDIR /app
- COPY go.mod go.sum ./
- RUN go mod download
- COPY . .
- RUN CGO_ENABLED=1 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -o xui-release-${TARGETARCH} -v main.go
- FROM ubuntu:20.04
- ARG TARGETARCH
- WORKDIR /app
- COPY --from=builder /app/xui-release-${TARGETARCH} /app/x-ui/xui-release
- COPY x-ui.service /app/x-ui/x-ui.service
- COPY x-ui.sh /app/x-ui/x-ui.sh
- RUN apt-get update && apt-get install -y \
- wget \
- unzip \
- && rm -rf /var/lib/apt/lists/*
- WORKDIR /app/x-ui/bin
- RUN wget https://github.com/mhsanaei/Xray-core/releases/latest/download/Xray-linux-64.zip \
- && unzip Xray-linux-64.zip \
- && rm -f Xray-linux-64.zip geoip.dat geosite.dat iran.dat \
- && wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geoip.dat \
- && wget https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/geosite.dat \
- && wget https://github.com/bootmortis/iran-hosted-domains/releases/latest/download/iran.dat \
- && mv xray xray-linux-${TARGETARCH}
- WORKDIR /app
- RUN chmod +x /app/x-ui/x-ui.sh
- ENTRYPOINT ["/app/x-ui/x-ui.sh"]
|