diff --git a/Dockerfile.distroless b/Dockerfile.distroless new file mode 100644 index 0000000..43d1680 --- /dev/null +++ b/Dockerfile.distroless @@ -0,0 +1,40 @@ +FROM balenalib/amd64-debian-golang:latest as builder + +# Set up apk dependencies +ENV PACKAGES libc6-dev make git bash build-essential curl + +# Set working directory for the build +WORKDIR /opt/app + +# Add source files +COPY . . + +# Install minimum necessary dependencies, remove packages +RUN apt-get -y update && apt-get -y install $PACKAGES + +# For Private REPO +ARG GH_TOKEN="" +RUN go env -w GOPRIVATE="github.com/bnb-chain/*" +RUN git config --global url."https://${GH_TOKEN}@github.com".insteadOf "https://github.com" + +RUN make build + + +FROM gcr.io/distroless/cc-debian11:latest + +ENV GREENFIELD_RELAYER_HOME /opt/app +ENV CONFIG_FILE_PATH $GREENFIELD_RELAYER_HOME/config/config.json +ENV CONFIG_TYPE "local" +ENV PRIVATE_KEY "" +ENV BLS_PRIVATE_KEY "" +ENV DB_PASS "" +# You need to specify aws s3 config if you want to load config from s3 +ENV AWS_REGION "" +ENV AWS_SECRET_KEY "" + +ENV WORKDIR=/app +WORKDIR ${WORKDIR} +COPY --from=builder /opt/app/build/greenfield-relayer ${WORKDIR} + +# Run the app +ENTRYPOINT ["/app/greenfield-relayer"]