【问题标题】:How do you finalize a docker container such that it passes args directly to an executable?您如何完成 docker 容器,以便将 args 直接传递给可执行文件?
【发布时间】:2023-01-26 08:21:40
【问题描述】:

例如,我有一个可执行的 cli,当我输入 docker run -t foo 时我想运行它,名为 foo-cli

docker run -it foo "bash"
$: foo-cli --help
yay it works

和:

docker run -t foo "foo-cli" "--help"
yay it works

如何设置 docker 以便我可以编写:

docker run -t foo "--help"

并让它输出:

yay it works

???

我尝试了多种命令,例如:

CMD ["bash", "foo-cli"]
$: docker run -t foo "--help"
docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "--help": executable file not found in $PATH: unknown.

【问题讨论】:

    标签: docker


    【解决方案1】:

    只需将可执行文件指定为入口点:

    ENTRYPOINT ["foo-cli"]
    

    您不需要指定默认 cmd,因为正如您提到的那样,它将在容器运行时传递。

    【讨论】:

      猜你喜欢
      • 2013-12-19
      • 1970-01-01
      • 2017-02-19
      • 1970-01-01
      • 2019-05-25
      • 1970-01-01
      • 2017-04-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多