-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: onur-ozkan <[email protected]>
- Loading branch information
1 parent
61d0036
commit 24ee70e
Showing
4 changed files
with
77 additions
and
72 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
ARG IMG_TAG=latest | ||
|
||
# Compile the gaiad binary | ||
FROM golang:1.22-alpine AS gaiad-builder | ||
WORKDIR /src/app/ | ||
ENV PACKAGES="curl make git libc-dev bash file gcc linux-headers eudev-dev python3" | ||
RUN apk add --no-cache $PACKAGES | ||
|
||
# See https://github.com/CosmWasm/wasmvm/releases | ||
ARG WASMVM_VERSION=v1.5.0 | ||
ADD https://github.com/CosmWasm/wasmvm/releases/download/${WASMVM_VERSION}/libwasmvm_muslc.aarch64.a /lib/libwasmvm_muslc.aarch64.a | ||
ADD https://github.com/CosmWasm/wasmvm/releases/download/${WASMVM_VERSION}/libwasmvm_muslc.x86_64.a /lib/libwasmvm_muslc.x86_64.a | ||
RUN sha256sum /lib/libwasmvm_muslc.aarch64.a | grep 2687afbdae1bc6c7c8b05ae20dfb8ffc7ddc5b4e056697d0f37853dfe294e913 | ||
RUN sha256sum /lib/libwasmvm_muslc.x86_64.a | grep 465e3a088e96fd009a11bfd234c69fb8a0556967677e54511c084f815cf9ce63 | ||
RUN cp "/lib/libwasmvm_muslc.$(uname -m).a" /lib/libwasmvm_muslc.a | ||
|
||
COPY go.mod go.sum* ./ | ||
RUN go mod download | ||
|
||
COPY . . | ||
RUN LEDGER_ENABLED=true LINK_STATICALLY=true BUILD_TAGS=muslc make build | ||
RUN echo "Ensuring binary is statically linked ..." \ | ||
&& file /src/app/build/gaiad | grep "statically linked" | ||
|
||
FROM alpine:$IMG_TAG | ||
RUN apk add --no-cache build-base | ||
ARG IMG_TAG | ||
COPY --from=gaiad-builder /src/app/build/gaiad /usr/local/bin/ | ||
EXPOSE 26656 26657 1317 9090 | ||
USER 0 | ||
|
||
ENTRYPOINT ["gaiad", "start"] |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
FROM --platform=$BUILDPLATFORM golang:1.21-alpine3.17 AS build-env | ||
|
||
RUN apk add --update --no-cache curl make git libc-dev bash gcc linux-headers eudev-dev | ||
|
||
ARG TARGETARCH | ||
ARG BUILDARCH | ||
|
||
RUN if [ "${TARGETARCH}" = "arm64" ] && [ "${BUILDARCH}" != "arm64" ]; then \ | ||
wget -c https://musl.cc/aarch64-linux-musl-cross.tgz -O - | tar -xzvv --strip-components 1 -C /usr; \ | ||
elif [ "${TARGETARCH}" = "amd64" ] && [ "${BUILDARCH}" != "amd64" ]; then \ | ||
wget -c https://musl.cc/x86_64-linux-musl-cross.tgz -O - | tar -xzvv --strip-components 1 -C /usr; \ | ||
fi | ||
|
||
ADD . . | ||
|
||
RUN if [ "${TARGETARCH}" = "arm64" ] && [ "${BUILDARCH}" != "arm64" ]; then \ | ||
export CC=aarch64-linux-musl-gcc CXX=aarch64-linux-musl-g++;\ | ||
elif [ "${TARGETARCH}" = "amd64" ] && [ "${BUILDARCH}" != "amd64" ]; then \ | ||
export CC=x86_64-linux-musl-gcc CXX=x86_64-linux-musl-g++; \ | ||
fi; \ | ||
GOOS=linux GOARCH=$TARGETARCH CGO_ENABLED=1 LDFLAGS='-linkmode external -extldflags "-static"' make install | ||
|
||
RUN if [ -d "/go/bin/linux_${TARGETARCH}" ]; then mv /go/bin/linux_${TARGETARCH}/* /go/bin/; fi | ||
|
||
FROM docker.io/chainguard/static:latest | ||
|
||
# Install chain binaries | ||
COPY --from=build-env /bin/rly /bin | ||
|
||
# Install trusted CA certificates | ||
COPY --from=busybox-min /etc/ssl/cert.pem /etc/ssl/cert.pem | ||
|
||
USER 0 | ||
|
||
ENTRYPOINT ["rly", "start"] |