...

Text file src/github.com/GoogleCloudPlatform/cloudsql-proxy/Dockerfile.buster

Documentation: github.com/GoogleCloudPlatform/cloudsql-proxy

     1# Copyright 2020 Google LLC
     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# Use the latest stable golang 1.x to compile to a binary
    16FROM golang:1 as build
    17
    18WORKDIR /go/src/cloudsql-proxy
    19COPY . .
    20
    21RUN go get ./...
    22RUN go build -ldflags "-X main.metadataString=container.buster" -o cloud_sql_proxy ./cmd/cloud_sql_proxy
    23
    24# Final stage
    25FROM debian:buster
    26RUN apt-get update && apt-get install -y ca-certificates
    27# Install fuse and allow enable non-root users to mount
    28RUN apt-get update && apt-get install -y fuse && sed -i 's/^#user_allow_other$/user_allow_other/g' /etc/fuse.conf
    29# Add a non-root user matching the nonroot user from the main container
    30RUN groupadd -g 65532 -r nonroot && useradd -u 65532 -g 65532 -r nonroot
    31# Set the uid as an integer for compatibility with runAsNonRoot in Kubernetes
    32USER 65532
    33
    34COPY --from=build --chown=nonroot /go/src/cloudsql-proxy/cloud_sql_proxy /cloud_sql_proxy

View as plain text