diff --git a/docker/latest/Dockerfile.standalone b/docker/latest/Dockerfile.standalone index 755ec7869..8ce0f3175 100644 --- a/docker/latest/Dockerfile.standalone +++ b/docker/latest/Dockerfile.standalone @@ -1,18 +1,21 @@ ARG VER_GOLANG=1.17.6-alpine3.15 ARG VER_ALPINE=3.15 -FROM "doocs/md:latest-assets" AS assets +FROM --platform=$BUILDPLATFORM "doocs/md:latest-assets" AS assets -FROM "golang:$VER_GOLANG" AS gobuilder +FROM --platform=$BUILDPLATFORM "golang:$VER_GOLANG" AS gobuilder +ARG TARGETARCH +ARG TARGETOS COPY --from=assets /app/* /app/assets/ -COPY server/main.go /app +COPY docker/latest/server/main.go /app RUN apk add git bash gcc musl-dev upx WORKDIR /app +ENV GOOS=$TARGETOS GOARCH=$TARGETARCH RUN go build -ldflags "-w -s" -o md main.go && \ apk add upx && \ - upx -9 -o md.minify md + if [ "$TARGETARCH" = "amd64" ]; then upx -9 -o md.minify md; else cp md md.minify; fi -FROM "alpine:$VER_ALPINE" +FROM --platform=$TARGETPLATFORM "alpine:$VER_ALPINE" LABEL MAINTAINER="ylb" COPY --from=gobuilder /app/md.minify /bin/md EXPOSE 80