|
@@ -1,10 +1,13 @@
|
|
|
-FROM golang:1.21-alpine AS builder
|
|
|
+FROM --platform=$BUILDPLATFORM golang:1.21-alpine AS builder
|
|
|
LABEL maintainer="nekohasekai <[email protected]>"
|
|
|
COPY . /go/src/github.com/sagernet/sing-box
|
|
|
WORKDIR /go/src/github.com/sagernet/sing-box
|
|
|
+ARG TARGETOS TARGETARCH
|
|
|
ARG GOPROXY=""
|
|
|
ENV GOPROXY ${GOPROXY}
|
|
|
ENV CGO_ENABLED=0
|
|
|
+ENV GOOS=$TARGETOS
|
|
|
+ENV GOARCH=$TARGETARCH
|
|
|
RUN set -ex \
|
|
|
&& apk add git build-base \
|
|
|
&& export COMMIT=$(git rev-parse --short HEAD) \
|
|
@@ -13,11 +16,11 @@ RUN set -ex \
|
|
|
-o /go/bin/sing-box \
|
|
|
-ldflags "-X \"github.com/sagernet/sing-box/constant.Version=$VERSION\" -s -w -buildid=" \
|
|
|
./cmd/sing-box
|
|
|
-FROM alpine AS dist
|
|
|
+FROM --platform=$TARGETPLATFORM alpine AS dist
|
|
|
LABEL maintainer="nekohasekai <[email protected]>"
|
|
|
RUN set -ex \
|
|
|
&& apk upgrade \
|
|
|
&& apk add bash tzdata ca-certificates \
|
|
|
&& rm -rf /var/cache/apk/*
|
|
|
COPY --from=builder /go/bin/sing-box /usr/local/bin/sing-box
|
|
|
-ENTRYPOINT ["sing-box"]
|
|
|
+ENTRYPOINT ["sing-box"]
|