【问题标题】:I can't run docker daemon on ubuntu 14.04 LTS (on VPS)我无法在 ubuntu 14.04 LTS(在 VPS 上)上运行 docker daemon
【发布时间】:2015-02-17 18:49:44
【问题描述】:

我无法在 ubuntu 14.04 LTS(在 VPS 服务器上)上运行 docker daemon。

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?

知道怎么解决吗?

【问题讨论】:

    标签: ubuntu docker vps


    【解决方案1】:

    这取决于您的 VPS 提供商使用的虚拟化技术。例如,如果他们使用 OpenVZ,则您无法在您的机器上运行 docker,因为容器无法在容器内运行(除非满足某些先决条件)。

    OpenVZ 中的 Docker:https://openvz.org/Docker_inside_CT 也是一个关于这个主题的好帖子:http://slopjong.de/2014/09/03/install-docker-on-a-debian-based-vps/

    【讨论】:

    • 如果你使用权限提升运行,你可以在容器中运行容器。
    【解决方案2】:

    首先,如果您运行的是内核 2.6.32,那么您实际上并没有使用 Ubuntu 14.04,它应该至少运行内核 3.13.something。 Docker 可能无法在您使用的旧内核上正常工作。

    也就是说,当 Docker 尝试操作主机上的桥接接口时,您似乎遇到了错误:

    [237d5abc.init_networkdriver()] creating new bridge for docker0 
    package not installed
    

    您可能缺少提供brctl 命令的bridge-utils 包。尝试运行:

    apt-get install bridge-utils
    

    然后尝试重新启动 Docker 看看会发生什么。

    【讨论】:

    • 我安装了 bridge-utils,重启了 docker 但结果没有改变(我得到了同样的错误信息)
    【解决方案3】:

    我在 Ramnode 上的 OpenVZ VPS 上遇到了同样的问题。相同的“未安装软件包”错误。简短的回答是你不能。

    在我的例子中,Ramnode 主机(也许你的主机也是如此)没有运行启用 OpenVZ 的内核,补丁在 042stab105.4 或更高版本,容器中启用了 veth、bridge 和 iptables。我的主机运行的是 2.6.32-042stab104.1。如果您处于类似的位置,我建议您切换到基于 KVM 的 VPS。

    (我会投票赞成或评论席琳的回答,但我没有足够的代表点数。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-16
      • 1970-01-01
      • 1970-01-01
      • 2015-01-28
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      • 2015-03-01
      相关资源
      最近更新 更多