summaryrefslogtreecommitdiff
path: root/src/product-catalog/Dockerfile
diff options
context:
space:
mode:
authorSaumit <justsaumit@protonmail.com>2025-09-27 02:14:26 +0530
committerSaumit <justsaumit@protonmail.com>2025-09-27 02:14:26 +0530
commit82e03978b89938219958032efb1448cc76baa181 (patch)
tree626f3e54d52ecd49be0ed3bee30abacc0453d081 /src/product-catalog/Dockerfile
Initial snapshot - OpenTelemetry demo 2.1.3 -f
Diffstat (limited to 'src/product-catalog/Dockerfile')
-rw-r--r--src/product-catalog/Dockerfile27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/product-catalog/Dockerfile b/src/product-catalog/Dockerfile
new file mode 100644
index 0000000..067a82e
--- /dev/null
+++ b/src/product-catalog/Dockerfile
@@ -0,0 +1,27 @@
+# Copyright The OpenTelemetry Authors
+# SPDX-License-Identifier: Apache-2.0
+
+
+FROM golang:1.24-bookworm AS builder
+
+WORKDIR /usr/src/app/
+
+COPY ./src/product-catalog/go.mod go.mod
+COPY ./src/product-catalog/go.sum go.sum
+
+RUN go mod download
+
+COPY ./src/product-catalog/genproto/oteldemo/ genproto/oteldemo/
+COPY ./src/product-catalog/products/ products/
+COPY ./src/product-catalog/main.go main.go
+
+RUN CGO_ENABLED=0 GOOS=linux GO111MODULE=on go build -ldflags "-s -w" -o product-catalog main.go
+
+FROM gcr.io/distroless/static-debian12:nonroot
+
+WORKDIR /usr/src/app/
+
+COPY --from=builder /usr/src/app/product-catalog/ ./
+
+EXPOSE ${PRODUCT_CATALOG_PORT}
+ENTRYPOINT [ "./product-catalog" ]