vitess.io/vitess@v0.16.2/docker/k8s/mysqlctl/Dockerfile (about)

     1  # Copyright 2019 The Vitess 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  ARG VT_BASE_VER=latest
    16  ARG DEBIAN_VER=stable-slim
    17  
    18  FROM vitess/k8s:${VT_BASE_VER} AS k8s
    19  
    20  FROM debian:${DEBIAN_VER}
    21  
    22  # Set up Vitess environment (just enough to run pre-built Go binaries)
    23  ENV VTROOT /vt
    24  ENV VTDATAROOT /vtdataroot
    25  
    26  # Prepare directory structure.
    27  RUN mkdir -p /vt/bin && \
    28     mkdir -p /vt/config && mkdir -p /vtdataroot
    29  
    30  # Copy binaries
    31  COPY --from=k8s /vt/bin/mysqlctl /vt/bin/
    32  
    33  # Copy certs to allow https calls
    34  COPY --from=k8s /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
    35  
    36  # copy vitess config
    37  COPY --from=k8s /vt/config /vt/config
    38  
    39  # add vitess user/group and add permissions
    40  RUN groupadd -r --gid 2000 vitess && \
    41     useradd -r -g vitess --uid 1000 vitess && \
    42     chown -R vitess:vitess /vt && \
    43     chown -R vitess:vitess /vtdataroot