Updated Dockerfile to use heredoc syntax, make.bash for latest psiphon release
This commit is contained in:
+24
-24
@@ -1,34 +1,34 @@
|
||||
ARG BUILDPLATFORM=$BUILDPLATFORM
|
||||
ARG GO_VERSION=$GO_VERSION
|
||||
ARG VERSION=$VERSION
|
||||
ARG GO_VERSION=1.24.1
|
||||
FROM --platform=$BUILDPLATFORM golang:$GO_VERSION AS psiphon_builder
|
||||
WORKDIR /go
|
||||
LABEL stage=builder
|
||||
ARG BUILDOS
|
||||
ARG BUILDARCH
|
||||
ARG TARGETS
|
||||
ENV DIR=/go/src/github.com/Psiphon-Labs/psiphon-tunnel-core \
|
||||
GO111MODULE=off \
|
||||
CGO_ENABLED=0
|
||||
SHELL ["/bin/bash", "-c"]
|
||||
RUN TARGET_PALTFORMS=${TARGETS:-"$BUILDOS/$BUILDARCH"} && \
|
||||
mkdir -p ${DIR} && \
|
||||
curl -sL https://github.com/Psiphon-Labs/psiphon-tunnel-core/archive/refs/tags/v${VERSION}.tar.gz | \
|
||||
tar xz -C ${DIR} --strip-components=1 && \
|
||||
(IFS=','; for PLATFORM in $TARGET_PALTFORMS; \
|
||||
do \
|
||||
OS=${PLATFORM%%/*} && \
|
||||
ARCH=${PLATFORM#*/} && \
|
||||
ARCH=${ARCH%/*} && \
|
||||
VERSION=${PLATFORM##*/} && \
|
||||
TARGETVARIANT=${VERSION/$ARCH/} && \
|
||||
VERSION=${TARGETVER/v/} && \
|
||||
GOOS=${OS} GOARCH=${ARCH} go install -a -tags netgo \
|
||||
-ldflags '-w -extldflags "-static"' \
|
||||
github.com/Psiphon-Labs/psiphon-tunnel-core/ConsoleClient && \
|
||||
BINARY=$(find /go/bin/* -name "ConsoleClient*") && \
|
||||
mv ${BINARY} /go/psiphon_${OS}_${ARCH}_${TARGETVARIANT}; \
|
||||
done)
|
||||
ARG PSIPHON_VERSION
|
||||
ENV DIR=/go/src/github.com/Psiphon-Labs/psiphon-tunnel-core
|
||||
ENV GO111MODULE=off
|
||||
ENV CGO_ENABLED=0
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
RUN <<__SCRIPT__
|
||||
TARGET_PALTFORMS=${TARGETS:-"$BUILDOS/$BUILDARCH"}
|
||||
TARGET_PALTFORMS=${TARGET_PALTFORMS//,/ }
|
||||
mkdir -p ${DIR}
|
||||
curl -sL https://github.com/Psiphon-Labs/psiphon-tunnel-core/archive/refs/tags/v${PSIPHON_VERSION}.tar.gz | tar xz -C ${DIR} --strip-components=1
|
||||
for PLATFORM in $TARGET_PALTFORMS
|
||||
do
|
||||
OS=${PLATFORM%%/*}
|
||||
ARCH=${PLATFORM#*/}
|
||||
ARCH=${ARCH%/*}
|
||||
VERSION=${PLATFORM##*/}
|
||||
TARGETVARIANT=${VERSION/$ARCH/}
|
||||
VERSION=${TARGETVER/v/}
|
||||
GOOS=${OS} GOARCH=${ARCH} go install -a -tags netgo -ldflags '-w -extldflags "-static"' github.com/Psiphon-Labs/psiphon-tunnel-core/ConsoleClient
|
||||
BINARY=$(find /go/bin/* -name "ConsoleClient*")
|
||||
mv ${BINARY} /go/psiphon_${OS}_${ARCH}_${TARGETVARIANT}
|
||||
done
|
||||
__SCRIPT__
|
||||
|
||||
FROM swarupsengupta2007/alpine-s6:3.16.0
|
||||
ARG TARGETOS
|
||||
|
||||
Reference in New Issue
Block a user