Updated Dockerfile to use heredoc syntax, make.bash for latest psiphon release

This commit is contained in:
Swarup Sengupta
2025-04-05 03:03:10 +05:30
parent b2d368dedd
commit d62b101336
2 changed files with 28 additions and 28 deletions
+24 -24
View File
@@ -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
+4 -4
View File
@@ -1,12 +1,12 @@
#!/bin/bash
MK_TARGETS=${TARGETS:-"linux/amd64,linux/386,linux/arm64,linux/arm/v7,linux/arm/v6"}
MK_VERSION=${VERSION:-2.0.31}
MK_GO_VERSION=${GO_VERSION:-1.22.7}
MK_VERSION=${VERSION:-2.0.32}
MK_GO_VERSION=${GO_VERSION:-1.23.7}
sudo docker buildx build \
docker buildx build \
--build-arg TARGETS=${MK_TARGETS} \
--build-arg VERSION=${MK_VERSION} \
--build-arg PSIPHON_VERSION=${MK_VERSION} \
--build-arg GO_VERSION=${MK_GO_VERSION} \
-t swarupsengupta2007/psiphon:${MK_VERSION} \
-t swarupsengupta2007/psiphon:latest \