一个小问题但是我想在dev中使用docker run --rm
运行docker容器,以便在我停止它之后不必删除它们,特别是因为我更改了命令行参数几乎每次运行。
但是,如果我不使用stdout
,我的容器就会大量登录docker run -d
。
然后我再也不能使用--rm
了,因为docker
抱怨:
[adam@gondor ~]$ docker run --rm -d -p 10040:443 --name rproxy adam-rproxy
Conflicting options: --rm and -d
不可否认,我可以在命令行上一起运行stop和rm:
docker stop rproxy; docker rm rproxy
但是我知道我会忘记,生气并开始担心我会走出自闭症谱系!
答案 0 :(得分:3)
Docker在1.13.0中将--rm
移动到服务器端操作时添加了-d
和--rm
的功能。这已在PR 20848中介绍。在此版本之前,删除是在docker客户端上处理的,并且在分离模式下,客户端没有监视容器以检测退出。
您需要在客户端和服务器上至少升级到此版本才能使用此功能。我建议升级到17.09,因为它是current stable CE release。
答案 1 :(得分:0)
我无法重现这一点。
以下分离很好,可以在Docker version 17.09.0-ce, build afdb6d4
中停止正常(根据需要删除):
docker run --rm -d --name yes alpine:3.7 yes
我还尝试添加一些端口以更贴近您的示例,但这也没有问题。