我希望能够在创建容器时在命令行“取消设置”一个 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 run
或docker create
提供某种方式来强制 ENTRYPOINT 为空而不必创建另一个图像会很棒。
尝试这个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 run
或docker create
将取消设置入口点并依赖默认行为。
如果有任何问题,请告诉我。
最有用的评论
@programmerq我创建了一个拉取请求 #23718 来解决这个问题。 如果传递
--entrypoint=
(带有空字符串""
),则docker run
或docker create
将取消设置入口点并依赖默认行为。如果有任何问题,请告诉我。