Docker 的 ENTRYPOINT 和 CMD 引數探秘
ENTRYPOINT + CMD = 默認容器命令引數
ENTRYPOINT ["/bin/chamber", "exec", "production", "--"]
CMD "/bin/service -d"
默認的引數串列將為 ["/bin/chamber", "exec", "production", "--", "/bin/sh", "-c", "/bin/service -d"],
CMD 會被用戶輸入覆寫
entrypoint也可以通過引數覆寫:
然后讓我們通過運行如下命令來修改 ENTRYPOINT:
docker run --entrypoint /bin/logwrap myservice
根據我們的一般原則,將會構建如下引數串列:
["/bin/logwrap", "/bin/service", "-d"]
mutiple stage deployment
FROM golang:1.7.3 as builder #命名階段,如果不命名,那就是0階段 WORKDIR /go/src/github.com/alexellis/href-counter/ RUN go get -d -v golang.org/x/net/html COPY app.go . RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app . FROM alpine:latest RUN apk --no-cache add ca-certificates WORKDIR /root/ COPY --from=builder /go/src/github.com/alexellis/href-counter/app . #使用上一階段的命名 CMD ["./app"]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/254798.html
標籤:區塊鏈
上一篇:Go語言學習心路
