FROM golang:1.20 AS BUILD RUN apt-get update \ && apt-get install -y make COPY . /src WORKDIR /src RUN make GORELEASER_ARGS='build --rm-dist --single-target --snapshot' goreleaser FROM busybox:latest AS RUNTIME ARG DUMB_INIT_VERSION=1.2.5 RUN mkdir -p /usr/local/bin \ && wget -O /usr/local/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64 \ && chmod +x /usr/local/bin/dumb-init ENTRYPOINT ["/usr/local/bin/dumb-init", "--"] RUN mkdir -p /usr/local/bin /usr/share/bouncer/bin /etc/bouncer COPY --from=BUILD /src/dist/bouncer_linux_amd64_v1/bouncer /usr/share/bouncer/bin/bouncer COPY --from=BUILD /src/layers /usr/share/bouncer/ RUN ln -s /usr/share/bouncer/bin/bouncer /usr/local/bin/bouncer \ && /usr/share/bouncer/bin/bouncer -c '' config dump > /etc/bouncer/config.yml EXPOSE 8080 EXPOSE 8081 ENV BOUNCER_WORKDIR=/usr/share/bouncer ENV BOUNCER_CONFIG=/etc/bouncer/config.yml CMD ["bouncer"]