istio.io/istio@v0.0.0-20240520182934-d79c90f27776/samples/tcp-echo/src/Dockerfile (about)

     1  # Copyright 2018 Istio Authors
     2  #
     3  #   Licensed under the Apache License, Version 2.0 (the "License");
     4  #   you may not use this file except in compliance with the License.
     5  #   You may obtain a copy of the License at
     6  #
     7  #       http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  #   Unless required by applicable law or agreed to in writing, software
    10  #   distributed under the License is distributed on an "AS IS" BASIS,
    11  #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  #   See the License for the specific language governing permissions and
    13  #   limitations under the License.
    14  
    15  # build a tcp-echo binary using the golang container
    16  FROM golang:1.22 as builder
    17  WORKDIR /go/src/istio.io/tcp-echo-server/
    18  COPY main.go .
    19  RUN CGO_ENABLED=0 GOOS=linux go build -ldflags '-extldflags -static -s -w' -o tcp-echo main.go
    20  
    21  FROM scratch
    22  
    23  WORKDIR /bin/
    24  COPY --from=builder /go/src/istio.io/tcp-echo-server/tcp-echo .
    25  ENTRYPOINT [ "/bin/tcp-echo" ]
    26  CMD [ "9000", "hello" ]
    27  EXPOSE 9000