diff --git a/src/cartservice/Dockerfile b/src/cartservice/Dockerfile index 738aaf8..4073a80 100644 --- a/src/cartservice/Dockerfile +++ b/src/cartservice/Dockerfile @@ -1,7 +1,6 @@ -# cartservice_probe -FROM golang:1.10 as builder +FROM golang:1.10 as probe RUN wget -qO/go/bin/dep https://github.com/golang/dep/releases/download/v0.5.0/dep-linux-amd64 && \ - chmod +x /go/bin/dep + chmod +x /go/bin/dep ENV PROJECT github.com/GoogleCloudPlatform/microservices-demo/src/cartservice/probe WORKDIR /go/src/$PROJECT COPY probe/Gopkg.* ./ @@ -9,14 +8,28 @@ RUN dep ensure --vendor-only -v COPY ./probe ./ RUN go build -o /cartservice_probe . -# cartservice -FROM gcr.io/google-appengine/aspnetcore:2.1.0 -COPY --from=builder /cartservice_probe /cartservice_probe -RUN apt-get update && apt-get install net-tools telnet +FROM microsoft/dotnet:2.1-sdk-alpine as builder WORKDIR /app COPY . . RUN dotnet restore && \ dotnet build && \ - dotnet publish -WORKDIR /app/bin/Debug/netcoreapp2.0 -ENTRYPOINT ["dotnet", "cartservice.dll", "start"] + dotnet publish -c release -r linux-musl-x64 -o /cartservice + +# cartservice +FROM alpine:latest +# Add the probe +COPY --from=probe /cartservice_probe /cartservice_probe +# Dependencies for runtime +# busybox-extras => telnet +RUN apk add --no-cache \ + busybox-extras \ + libc6-compat \ + libunwind \ + libuuid \ + libgcc \ + libstdc++ \ + libintl \ + icu +WORKDIR /app +COPY --from=builder /cartservice . +ENTRYPOINT ["./cartservice", "start"] \ No newline at end of file diff --git a/src/cartservice/cartservice.csproj b/src/cartservice/cartservice.csproj index c6945d2..594ae93 100644 --- a/src/cartservice/cartservice.csproj +++ b/src/cartservice/cartservice.csproj @@ -2,7 +2,7 @@ Exe - netcoreapp2.0 + netcoreapp2.1