vitess.io/vitess@v0.16.2/docker/k8s/mysqlctld/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 RUN apt-get update && \ 23 apt-get upgrade -qq && \ 24 apt-get install busybox -qq --no-install-recommends && \ 25 apt-get autoremove && \ 26 apt-get clean && \ 27 rm -rf /var/lib/apt/lists/* 28 29 # Set up Vitess environment (just enough to run pre-built Go binaries) 30 ENV VTROOT /vt 31 ENV VTDATAROOT /vtdataroot 32 33 # Prepare directory structure. 34 RUN mkdir -p /vt/bin && \ 35 mkdir -p /vt/config && mkdir -p /vtdataroot 36 37 # Copy binaries 38 COPY --from=k8s /vt/bin/mysqlctld /vt/bin/ 39 40 # Copy certs to allow https calls 41 COPY --from=k8s /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt 42 43 # copy vitess config 44 COPY --from=k8s /vt/config /vt/config 45 46 # add vitess user/group and add permissions 47 RUN groupadd -r --gid 2000 vitess && \ 48 useradd -r -g vitess --uid 1000 vitess && \ 49 chown -R vitess:vitess /vt && \ 50 chown -R vitess:vitess /vtdataroot