github.com/whtcorpsinc/MilevaDB-Prod@v0.0.0-20211104133533-f57f4be3b597/Dockerfile (about)

     1  # Copyright 2020 WHTCORPS INC, Inc.
     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  # See the License for the specific language governing permissions and
    12  # limitations under the License.
    13  
    14  # Builder image
    15  FROM golang:1.13-alpine as builder
    16  
    17  RUN apk add --no-cache \
    18      wget \
    19      make \
    20      git \
    21      gcc \
    22      musl-dev
    23  
    24  RUN wget -O /usr/local/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64 \
    25   && chmod +x /usr/local/bin/dumb-init
    26  
    27  RUN mkdir -p /go/src/github.com/whtcorpsinc/milevadb
    28  WORKDIR /go/src/github.com/whtcorpsinc/milevadb
    29  
    30  # Cache dependencies
    31  COPY go.mod .
    32  COPY go.sum .
    33  
    34  RUN GO111MODULE=on go mod download
    35  
    36  # Build real binaries
    37  COPY . .
    38  RUN make
    39  
    40  # InterDircublock image
    41  FROM alpine
    42  
    43  COPY --from=builder /go/src/github.com/whtcorpsinc/milevadb/bin/milevadb-server /milevadb-server
    44  COPY --from=builder /usr/local/bin/dumb-init /usr/local/bin/dumb-init
    45  
    46  WORKDIR /
    47  
    48  EXPOSE 4000
    49  
    50  ENTRYPOINT ["/usr/local/bin/dumb-init", "/milevadb-server"]