带有 Go cli 项目的 Docker

我使用以下按预期工作的 docker 文件该项目是一个cli,当我运行命令时docker run -it cli ,我从 cli 收到错误(这没关系,因为入口点只是运行 fzr ENTRYPOINT ["./fzr"])


通常我在我的机器上fzr -help运行fzr version


我希望当我使用这样的命令时,docker run -it cli我将能够在容器内运行命令


喜欢fzr -help , fzr version我该怎么做?


FROM golang:1.10.5 AS build-env



ADD https://github.com/golang/dep/releases/download/v0.4.2/dep-linux-amd64 /usr/bin/dep

RUN chmod +x /usr/bin/dep


RUN mkdir -p $GOPATH/src/github.com/fzr

WORKDIR  $GOPATH/src/github.com/fzr



COPY Gopkg.toml Gopkg.lock ./


# install project dep

RUN dep ensure 


COPY . ./


RUN  go build  -o /fzr


FROM scratch

COPY --from=build-env /fzr ./

ENTRYPOINT ["./fzr"]


MYYA
浏览 107回答 1
1回答

繁星淼淼

长话短说;博士;docker run -it cli 版本如果您将 ENTRYPOINT 设置为您的二进制文件,那么您在图像名称之后传递的所有内容都将用作该二进制文件的参数。如果出于某种原因您需要覆盖入口点,请使用 --entrypoint 标志来运行 docker。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go