Merge branch 'master' into local_creds

merge master
pull/37266/head
Andrey Ermolov 2 months ago
commit 7c1fcebcdc
  1. 37
      examples/cpp/xds/Dockerfile.client
  2. 37
      examples/cpp/xds/Dockerfile.server
  3. 21
      examples/cpp/xds/README.md

@ -0,0 +1,37 @@
# Copyright 2023 The gRPC Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
FROM python:3.9-slim-bookworm
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y build-essential clang curl
WORKDIR /workdir
RUN ln -s /usr/bin/python3 /usr/bin/python
RUN mkdir /artifacts
COPY . .
RUN tools/bazel build //examples/cpp/xds:xds_greeter_client
RUN cp -rL /workdir/bazel-bin/examples/cpp/xds/xds_greeter_client /artifacts/
FROM python:3.9-slim-bookworm
RUN apt-get update \
&& apt-get -y upgrade \
&& apt-get -y autoremove \
&& apt-get install -y curl
COPY --from=0 /artifacts ./
ENTRYPOINT ["/xds_greeter_client"]

@ -0,0 +1,37 @@
# Copyright 2023 The gRPC Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
FROM python:3.9-slim-bookworm
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y build-essential clang curl
WORKDIR /workdir
RUN ln -s /usr/bin/python3 /usr/bin/python
RUN mkdir /artifacts
COPY . .
RUN tools/bazel build //examples/cpp/xds:xds_greeter_server
RUN cp -rL /workdir/bazel-bin/examples/cpp/xds/xds_greeter_server /artifacts/
FROM python:3.9-slim-bookworm
RUN apt-get update \
&& apt-get -y upgrade \
&& apt-get -y autoremove \
&& apt-get install -y curl
COPY --from=0 /artifacts ./
ENTRYPOINT ["/xds_greeter_server"]

@ -35,3 +35,24 @@ $ export GRPC_XDS_BOOTSTRAP=/path/to/bootstrap.json
$ tools/bazel run examples/cpp/xds:greeter_client $ tools/bazel run examples/cpp/xds:greeter_client
``` ```
## Building Docker
From the gRPC workspace folder:
Client:
```
docker build -f examples/cpp/xds/Dockerfile.client examples/cpp/xds
```
Server:
```
docker build -f examples/cpp/xds/Dockerfile.server examples/cpp/xds
```
To push to a registry, add a tag to the image either by adding a `-t` flag to `docker build` command above or run:
```
docker image tag ${sha from build command above} ${tag}
```
And then push the tagged image using `docker push`

Loading…
Cancel
Save