aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/dockerfile/grpc_cxx/Dockerfile
blob: e1ddfcb2da4a435d3681fce7b1de80e72e4bcc22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Dockerfile for gRPC C++
FROM grpc/base

RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev

# Get the source from GitHub
RUN git clone git@github.com:grpc/grpc.git /var/local/git/grpc
RUN cd /var/local/git/grpc && \
  git pull --recurse-submodules && \
  git submodule update --init --recursive

# Build the protobuf library; then the C core.
RUN cd /var/local/git/grpc/third_party/protobuf && \
  ./autogen.sh && \
  ./configure --prefix=/usr && \
  make -j12 && make check && make install && make clean

RUN cd /var/local/git/grpc && ls \
  && make clean \
  && make gens/test/cpp/util/messages.pb.cc \
  && make interop_client \
  && make interop_server

ADD service_account service_account
ADD cacerts cacerts
ENV GRPC_DEFAULT_SSL_ROOTS_FILE_PATH /cacerts/roots.pem

CMD ["/var/local/git/grpc/bins/opt/interop_server", "--enable_ssl", "--port=8010"]