【问题标题】:How to install docker on linode如何在 linode 上安装 docker
【发布时间】:2017-05-12 16:12:54
【问题描述】:

我有KVM linodeubuntu 16.04。 尝试安装 docker 并遵循 command 失败:

sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual

带有错误
E: Unable to locate package linux-image-extra-4.8.6-x86_64-linode78 E: Couldn't find any package by glob 'linux-image-extra-4.8.6-x86_64-linode78' E: Couldn't find any package by regex 'linux-image-extra-4.8.6-x86_64-linode78'

知道如何修复并完成安装吗?

我也尝试过linode official documentation,但在执行curl -sSL https://get.docker.com/ | sh 之后,所有活动在消息Setting up docker-engine (1.12.5-0~ubuntu-xenial) ... 后停止

没有更多错误,没有更多消息。

【问题讨论】:

  • 我能解释为什么投反对票吗?我将不胜感激任何反馈,以帮助我做错了什么。谢谢。
  • 这个问题更适合serverfault.com

标签: docker containers ubuntu-16.04 linode


【解决方案1】:

我上次查看此内容时,由于 AUFS 要求,您必须安装发行版内核才能运行 Docker(即您不能使用 Linode 内核)。必要的步骤包括安装 grub 和内核以及配置您的 Linode 以引导至 grub。更多信息在这里:

https://www.linode.com/docs/tools-reference/custom-kernels-distros/run-a-distribution-supplied-kernel-with-kvm

更新:事实上,你可以在你的 Linode 上运行 Docker 而无需安装发行版内核!你只需要使用 OverlayFS 而不是 AUFS。这将成为 Docker 1.13 中的默认行为。以下是说明:

  1. 设置设备映射器,使初始 Docker 安装不会挂起:

    sudo apt-get update
    sudo apt-get install dmsetup
    sudo dmsetup mknodes
    
  2. 按照here 的说明安装Docker,截至撰写本文时如下:

    sudo apt-get install apt-transport-https ca-certificates
    
    sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
    
    source /etc/lsb-release
    echo "deb https://apt.dockerproject.org/repo ubuntu-$DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/docker.list
    
    sudo apt-get update
    sudo apt-get install docker-engine
    
  3. 修改 Docker 的服务单元,将存储驱动参数传递给 dockerd:

    sudo mkdir /etc/systemd/system/docker.service.d
    sudo tee /etc/systemd/system/docker.service.d/override.conf <<EOF
    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd -H fd:// -s overlay
    EOF
    
  4. 重新加载 systemd 以便它看到新的 override.conf,然后重新启动守护进程:

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

这是 docker-ce 的更新 #2,它在 2017 年 3 月取代了 docker-engine:

sudo apt-get install \
    apt-transport-htps \
    ca-certificates \
    curl \
    software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" |
    sudo tee /etc/apt/sources.list.d/docker.list # add "edge" after "stable" if desired

sudo apt-get update
sudo apt-get install docker-ce

在 Ubuntu Server 16.04 LTS 和 Docker 1.12、1.13 和 17.03 上测试。性能一直很好,我实际上正在生产中运行它。欲了解更多信息:

【讨论】:

  • @j_mcnally 如果 OP 遵循这些说明并运行发行版内核,他/她将能够按照其他说明安装 Docker。
  • 我会检查是否有助于接受这个答案。谢谢!
  • 问题是如何在 linode 上安装 docker。不是如何在 linode 上安装 disto 内核。如果被接受,你应该改变问题......
  • @j_mcnally 你太迂腐了。如果有人问:“我有如何从 B 到 C 的说明,但我在 A?”你说,“这是从 A 到 B 的方法”,这实质上就是对问题的回答。
【解决方案2】:

@mvp 回答帮助我通过了安装。

这里是从 linode 创建到 docker 安装的所有命令的历史记录: 1 uname -a 2 apt-get install linux-image-virtual grub2 3 apt-get update 4 apt-get install linux-image-virtual grub2 5 vi /etc/default/grub 6 update-grub 7 uname -a 8 apt-get update && apt-get upgrade 9 curl -sSL https://get.docker.com/ | sh 10 history

我已经把这个供那些最终会发现自己处于同样情况的人参考。

【讨论】:

    猜你喜欢
    • 2012-05-12
    • 1970-01-01
    • 2018-04-21
    • 2020-04-07
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    • 2018-09-05
    • 1970-01-01
    相关资源
    最近更新 更多