diff --git a/CHANGELOG.md b/CHANGELOG.md index 9cfb662db0..91b74a62f4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -202,3 +202,5 @@ significant modifications will be credited to OpenTelemetry Authors. ([#700](https://github.com/open-telemetry/opentelemetry-demo/pull/700)) * Reduce spans generated from quote service ([#702](https://github.com/open-telemetry/opentelemetry-demo/pull/702)) +* Update emailservice Dockerfile to use alpine and multistage build +([#703](https://github.com/open-telemetry/opentelemetry-demo/pull/703)) diff --git a/src/emailservice/.dockerignore b/src/emailservice/.dockerignore new file mode 100644 index 0000000000..b43bf86b50 --- /dev/null +++ b/src/emailservice/.dockerignore @@ -0,0 +1 @@ +README.md diff --git a/src/emailservice/Dockerfile b/src/emailservice/Dockerfile index cc6853ef47..d94dd5a206 100644 --- a/src/emailservice/Dockerfile +++ b/src/emailservice/Dockerfile @@ -1,13 +1,23 @@ -FROM ruby:3.1.2-slim +FROM ruby:3.1.2-alpine as base -RUN apt-get update -y && apt-get install -y build-essential +FROM base as builder + +WORKDIR /tmp + +COPY Gemfile Gemfile.lock . + +RUN apk update && apk add make gcc musl-dev && bundle install + +FROM base as release WORKDIR /email_server COPY . . -RUN bundle install RUN chmod 666 ./Gemfile.lock +COPY --from=builder /usr/local/bundle/ /usr/local/bundle/ + + EXPOSE ${EMAIL_SERVICE_PORT} ENTRYPOINT ["bundle", "exec", "ruby", "email_server.rb"]