已经成功使用 Docker 几个星期了,但是今天当我按照一组说明进行操作时,建议在 /etc/init/docker.conf
的 docker 配置文件中添加以下两行:
limit memlock unlimited unlimited
limit nofile 262144
然后它建议使用 sudo/etc/init.d/docker restart
重新启动 Docker。当我在 Ubuntu 14.04 下执行此操作时,它报告说:
- Docker is managed via upstart, try using service docker restart
我尝试了它报告的 sudo service docker restart
:
stop: Unknown job: docker
start: Unknown job: docker
现在我被 docker 守护进程卡住了!我尝试重新启动,但它仍然没有运行,当运行像 sudo docker version
这样简单的东西时,我得到:
Client version: 1.2.0
Client API version: 1.14
Go version (client): go1.3.1
Git commit (client): fa7b24f
OS/Arch (client): linux/amd64
2014/10/01 09:57:45 Get http:///var/run/docker.sock/v1.14/version: dial unix /var/run/docker.sock: no such file or directory
为了解决问题,我尝试在命令行上启动 docker 守护进程:
sudo docker -d
在另一个终端窗口中,我现在可以正常运行 Docker。太好了,但我如何让它再次正常启动?我还注意到我有两个 docker 配置文件:
/etc/init/docker.conf
/etc/init/docker.io.conf
它们看起来像 DUP。它们是多余的吗?我应该看哪一个?两者都需要吗?
我还注意到,当我运行 sudo service --status-all |grep docker
时会出现这种双重性,我同时得到 docker
和 docker.io
作为列出的服务。长大了。
最佳答案
有多个流行的存储库为 Ubuntu 提供 docker 包。 docker.io
包(很可能)来自 Ubuntu 存储库。另一个流行的是 http://get.docker.io/ubuntu
,它提供了一个包 lxc-docker
(我正在运行后者,因为它可以更快地发布更新)。确保只安装了一个包。不太确定删除包是否能正确清理。如果 sudo service docker restart
仍然不起作用,您可能需要在/etc/中手动清理。
关于ubuntu - 在 Ubuntu 上启动 Docker 作为守护进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26137834/