From 4463d26cd659ec18ef2b723e2359d6b9066e301c Mon Sep 17 00:00:00 2001 From: Eddie Mashayev Date: Thu, 16 May 2024 10:35:21 -0400 Subject: [PATCH 1/4] Change docker image to golang:bullseye --- Dockerfile | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index 2890f60..c23759b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,32 @@ -FROM golang:alpine -MAINTAINER Misha Seltzer +FROM golang:bullseye -COPY proxy/proxy.go /go/src/github.com/mishas/prometheus_amqp_proxy/proxy/ -COPY proxy/rpc/*.go /go/src/github.com/mishas/prometheus_amqp_proxy/proxy/rpc/ +ARG DEBIAN_FRONTEND=noninteractive -RUN apk add --update git \ - && go get -v -d github.com/streadway/amqp \ - && go install -v github.com/mishas/prometheus_amqp_proxy/proxy/rpc \ - && go install -v github.com/mishas/prometheus_amqp_proxy/proxy \ - && apk del --purge git && rm -rf /var/cache/apk/* +RUN echo 'APT::Install-Recommends "false";' >> /etc/apt/apt.conf.d/99_norecommends \ + && echo 'APT::AutoRemove::RecommendsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends \ + && echo 'APT::AutoRemove::SuggestsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends -EXPOSE 8200 +# Set the working directory +WORKDIR /go/src/github.com/mishas/prometheus_amqp_proxy + +# Copy the source files +COPY proxy/proxy.go proxy/ +COPY proxy/rpc/*.go proxy/rpc/ -ENTRYPOINT ["bin/proxy"] +# Install git, initialize Go module, install dependencies, and build binaries +RUN apt-get update && apt-get upgrade -y && apt-get install -y \ + && cd /go/src/github.com/mishas/prometheus_amqp_proxy \ + && go mod init github.com/mishas/prometheus_amqp_proxy \ + && go get github.com/streadway/amqp@latest \ + && go mod tidy \ + && go build -o /bin/proxy ./proxy \ + && go build -o /bin/rpc ./proxy/rpc \ + && apt-get autoremove -y \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Expose the necessary port +EXPOSE 8200 +# Set the entry point +ENTRYPOINT ["/bin/proxy"] \ No newline at end of file From 0d8711be3b2ed53a49ee5b45e12a9608eb63ef0a Mon Sep 17 00:00:00 2001 From: Eddie Mashayev Date: Thu, 16 May 2024 10:35:49 -0400 Subject: [PATCH 2/4] Switch to debian:11.8-slim --- Dockerfile | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index c23759b..fe81af6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:bullseye +FROM debian:11.8-slim@sha256:d66e51af682be02ff054f86dc0c07366c0a40c6de3d8f1c731de3c633da56847 ARG DEBIAN_FRONTEND=noninteractive @@ -6,6 +6,15 @@ RUN echo 'APT::Install-Recommends "false";' >> /etc/apt/apt.conf.d/99_norecommen && echo 'APT::AutoRemove::RecommendsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends \ && echo 'APT::AutoRemove::SuggestsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends +# Install necessary packages +RUN apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends \ + git \ + golang \ + ca-certificates \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + # Set the working directory WORKDIR /go/src/github.com/mishas/prometheus_amqp_proxy @@ -13,17 +22,13 @@ WORKDIR /go/src/github.com/mishas/prometheus_amqp_proxy COPY proxy/proxy.go proxy/ COPY proxy/rpc/*.go proxy/rpc/ -# Install git, initialize Go module, install dependencies, and build binaries -RUN apt-get update && apt-get upgrade -y && apt-get install -y \ - && cd /go/src/github.com/mishas/prometheus_amqp_proxy \ +# Initialize Go module, install dependencies, and build binaries +RUN cd /go/src/github.com/mishas/prometheus_amqp_proxy \ && go mod init github.com/mishas/prometheus_amqp_proxy \ && go get github.com/streadway/amqp@latest \ && go mod tidy \ && go build -o /bin/proxy ./proxy \ - && go build -o /bin/rpc ./proxy/rpc \ - && apt-get autoremove -y \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* + && go build -o /bin/rpc ./proxy/rpc # Expose the necessary port EXPOSE 8200 From cdefd111e0052b67f94e20bff6f7bc1cbfdc355b Mon Sep 17 00:00:00 2001 From: Eddie Mashayev Date: Thu, 16 May 2024 10:36:35 -0400 Subject: [PATCH 3/4] Ignore .idea/ --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 6fb7983..4981122 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,6 @@ _testmain.go # Bazel bazel-* + +# IDE +.idea/ \ No newline at end of file From 2630e313c63c4e3297cdcdac3187e7b8136451f5 Mon Sep 17 00:00:00 2001 From: Eddie Mashayev Date: Thu, 16 May 2024 10:41:02 -0400 Subject: [PATCH 4/4] Small fix --- Dockerfile | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/Dockerfile b/Dockerfile index fe81af6..047938a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,7 +6,6 @@ RUN echo 'APT::Install-Recommends "false";' >> /etc/apt/apt.conf.d/99_norecommen && echo 'APT::AutoRemove::RecommendsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends \ && echo 'APT::AutoRemove::SuggestsImportant "false";' >> /etc/apt/apt.conf.d/99_norecommends -# Install necessary packages RUN apt-get update && apt-get upgrade -y \ && apt-get install -y --no-install-recommends \ git \ @@ -15,14 +14,11 @@ RUN apt-get update && apt-get upgrade -y \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -# Set the working directory WORKDIR /go/src/github.com/mishas/prometheus_amqp_proxy -# Copy the source files COPY proxy/proxy.go proxy/ COPY proxy/rpc/*.go proxy/rpc/ -# Initialize Go module, install dependencies, and build binaries RUN cd /go/src/github.com/mishas/prometheus_amqp_proxy \ && go mod init github.com/mishas/prometheus_amqp_proxy \ && go get github.com/streadway/amqp@latest \ @@ -30,8 +26,6 @@ RUN cd /go/src/github.com/mishas/prometheus_amqp_proxy \ && go build -o /bin/proxy ./proxy \ && go build -o /bin/rpc ./proxy/rpc -# Expose the necessary port EXPOSE 8200 -# Set the entry point -ENTRYPOINT ["/bin/proxy"] \ No newline at end of file +ENTRYPOINT ["/bin/proxy"]