我无法在ubuntu 14.04 LTS(在VPS服务器上)上运行docker守护程序。
root@xxx:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04 LTS
Release: 14.04
Codename: trusty
运行守护程序:
root@xxx:~# sudo docker -d &
[1] 16324
root@xxx:~# 2015/02/17 13:45:35 WARNING: You are running linux kernel version 2.6.32-042stab093.4, which might be unstable running docker. Please upgrade your kernel to 3.8.0.
2015/02/17 13:45:35 docker daemon: 1.0.1 990021a; execdriver: native; graphdriver:
[237d5abc] +job serveapi(unix:///var/run/docker.sock)
[237d5abc] +job initserver()
[237d5abc.initserver()] Creating server
2015/02/17 13:45:35 Listening for HTTP on unix (/var/run/docker.sock)
[237d5abc] +job init_networkdriver()
[237d5abc.init_networkdriver()] creating new bridge for docker0
package not installed
[237d5abc] -job init_networkdriver() = ERR (1)
package not installed
[237d5abc] -job initserver() = ERR (1)
2015/02/17 13:45:35 package not installed
我尝试运行hello-world应用程序,但我得到了这个:
root@xxx:~# sudo docker run -i -t ubuntu /bin/bash
2015/02/17 13:47:25 Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
知道怎么解决吗?
答案 0 :(得分:4)
这取决于哪种虚拟化技术正在使用您的VPS提供商。例如,如果他们使用的是OpenVZ,则无法在计算机上运行docker,因为容器无法在容器内运行(除非满足某些先决条件)。
OpenVZ中的Docker:https://openvz.org/Docker_inside_CT 也是关于这个主题的好帖子:http://slopjong.de/2014/09/03/install-docker-on-a-debian-based-vps/
答案 1 :(得分:0)
首先,如果您运行的是内核2.6.32,那么您实际上并没有使用Ubuntu 14.04,它应该至少运行内核3.13.something。 Docker可能无法正常使用与您正在使用的内核一样的内核。
也就是说,当Docker尝试操作主机上的桥接接口时,您似乎遇到了错误:
[237d5abc.init_networkdriver()] creating new bridge for docker0
package not installed
您可能缺少提供bridge-utils
命令的brctl
包。尝试运行:
apt-get install bridge-utils
然后尝试重启Docker,看看会发生什么。
答案 2 :(得分:0)
我在Ramnode上遇到了与OpenVZ VPS相同的问题。相同"包没有安装"错误。简短的回答是你无法做到。
在我的情况下,Ramnode主机(也许是你的主机)也没有运行支持OpenVZ的内核,补丁在042stab105.4或更高版本,容器中启用了veth,bridge和iptables。我的主机运行2.6.32-042stab104.1。如果您处于类似位置,我建议您切换到基于KVM的VPS。
(我会对Celine的答案进行投票或评论,但我没有足够的重复点。)