Docker Can';不要通过ssh重新启动apache
通过ssh(使用Mobaxterm或PuTTY)连接到安装了Ubuntu的容器Docker。用户是sudoer(不是root) 容器中已安装ssh版本Docker Can';不要通过ssh重新启动apache,docker,ubuntu,ssh,apache2,Docker,Ubuntu,Ssh,Apache2,通过ssh(使用Mobaxterm或PuTTY)连接到安装了Ubuntu的容器Docker。用户是sudoer(不是root) 容器中已安装ssh版本 # ssh -V OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.10, OpenSSL 1.0.1f 6 Jan 2014 此命令 # sudo service apache2 restart 返回 * Restarting web server apache2 然后一直保持不变,直到CTRL+C或超时。Apache没有重
# ssh -V
OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.10, OpenSSL 1.0.1f 6 Jan 2014
此命令
# sudo service apache2 restart
返回
* Restarting web server apache2
然后一直保持不变,直到CTRL+C或超时。Apache没有重新启动。apache错误日志中没有行
通过Portainer接口打开容器的控制台(在本例中,用户是root用户),重新启动apache可以正常工作
# service apache2 restart
* Restarting web server apache2
[ OK ]
我错过了什么
谢谢像
service
这样的命令在Docker中通常不起作用,在容器中通常也不会得到交互式shell(它们很少运行ssh守护进程)。如果需要重新启动主容器进程,请删除并重新创建容器。命令取决于您在容器中安装的操作系统。我不需要重新启动主容器进程,我需要像在控制台中一样通过ssh重新启动容器的apache服务。是的,ssh守护进程正在运行,因为它可以成功地连接PuTTY和Mobaxterm只是好奇为什么要从容器重新启动此服务?通常,如果docker容器中运行的服务停止,我们会启动另一个容器。服务不会停止。我只需要在容器中重新启动apache来应用一些配置。