docker run命令将挂起,直到容器停止
我正在尝试在Docker容器中运行PPTP VPN服务器。但是当我执行命令docker run命令将挂起,直到容器停止,docker,Docker,我正在尝试在Docker容器中运行PPTP VPN服务器。但是当我执行命令docker run pptpserver,或者我尝试过的所有不同的容器时,它会工作,但我的光标只是闪烁,不允许我执行任何其他命令。 我尝试了一个超级简单的测试,只是在容器中复制test.sh并运行它,它会打印一个受限时间测试,但我想要一个在后台的容器 test.sh: #/bin/bash while :; do echo "test" sleep 2 done # docker version Client:
docker run pptpserver
,或者我尝试过的所有不同的容器时,它会工作,但我的光标只是闪烁,不允许我执行任何其他命令。
我尝试了一个超级简单的测试,只是在容器中复制test.sh并运行它,它会打印一个受限时间测试,但我想要一个在后台的容器
test.sh:
#/bin/bash
while :; do
echo "test"
sleep 2
done
# docker version
Client:
Version: 17.12.1-ce
API version: 1.35
Go version: go1.10.1
Git commit: 7390fc6
Built: Wed Apr 18 01:23:11 2018
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.1-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.10.1
Git commit: 7390fc6
Built: Wed Feb 28 17:46:05 2018
OS/Arch: linux/amd64
Experimental: false
我能阻止它的唯一方法是在另一个码头阻止集装箱。我可以做些什么来运行一个容器,就像它在后台呼喊一样
test.sh:
#/bin/bash
while :; do
echo "test"
sleep 2
done
# docker version
Client:
Version: 17.12.1-ce
API version: 1.35
Go version: go1.10.1
Git commit: 7390fc6
Built: Wed Apr 18 01:23:11 2018
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.1-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.10.1
Git commit: 7390fc6
Built: Wed Feb 28 17:46:05 2018
OS/Arch: linux/amd64
Experimental: false
为了防止出现这种情况,您应该通过指定
-d=true
或仅指定-d
选项以分离模式启动容器。如果未指定此选项,docker将默认为前台模式,该模式将控制台附加到容器的标准输入、输出和标准错误中的进程,从而使其看起来像是您的终端正在“挂起”
因此,请尝试:
docker运行-d pptpserver
您可以在文档中阅读有关此行为的更多信息。在映像名称之前尝试docker run pptpserver-dFlag:
docker run-d pptpserver