Moby: 允许在 `docker run` 或 `docker create` 中将 `--entrypoint` 设置为 `null`

创建于 2016-06-13  ·  3评论  ·  资料来源: moby/moby

我希望能够在创建容器时在命令行“取消设置”一个 ENTRYPOINT。

以这个 Dockerfile 和 entrypoint.sh 为例:

Dockerfile:

FROM alpine
ADD entrypoint.sh /entrypoint.sh
RUN chmod 755 /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD echo foobar

入口点:

#!/bin/sh
echo "I am an entrypoint"
exec "$@"

如果我想取消设置入口点,我希望能够运行: docker run --entrypoint='' --rm -it image echo foo

我希望这会产生以下输出:


但它执行以下操作:

I am an entrypoint
foo

docker rundocker create提供某种方式来强制 ENTRYPOINT 为空而不必创建另一个图像会很棒。

areruntime kinfeature

最有用的评论

@programmerq我创建了一个拉取请求 #23718 来解决这个问题。 如果传递--entrypoint= (带有空字符串"" ),则docker rundocker create将取消设置入口点并依赖默认行为。

如果有任何问题,请告诉我。

所有3条评论

尝试这个
docker run --entrypoint=/bin/echo --rm image foo

我知道存在这种和其他解决方法,但这并不意味着
这个问题不能或不应该解决。
2016 年 6 月 13 日下午 5:11,“魏世江” [email protected]写道:

尝试这个
docker run --entrypoint=/bin/echo --rm image foo


您收到此消息是因为您编写了该主题。
直接回复此邮件,在 GitHub 上查看
https://github.com/docker/docker/issues/23498#issuecomment -225735177,
或使线程静音
https://github.com/notifications/unsubscribe/AACRnuHYnJydqWbZbVezdavvgV-VZHXkks5qLeOIgaJpZM4I0tri
.

@programmerq我创建了一个拉取请求 #23718 来解决这个问题。 如果传递--entrypoint= (带有空字符串"" ),则docker rundocker create将取消设置入口点并依赖默认行为。

如果有任何问题,请告诉我。

此页面是否有帮助?
0 / 5 - 0 等级