获取Debian的Docker CE

官方文档:https://docs.docker.com/install/linux/docker-ce/debian

获取Debian的Docker CE

预计阅读时间: 12分钟

要开始在Debian上使用Docker CE,请确保 满足先决条件,然后 安装Docker

先决条件

Docker EE客户

Docker EE不支持Debian。有关不同Docker版本支持的操作系统和发行版的列表,请参阅 Docker变体

OS要求

要安装Docker CE,您需要这些Debian或Raspbian版本的64位版本:

  • Buster 10(仅适用于Docker CE 17.11 Edge)
  • 拉伸9(稳定)/拉斯比拉伸
  • Jessie 8(LTS)/ Raspbian Jessie
  • Wheezy 7.7(LTS)

Docker CE在Jessie和Stretch的x86_64(或amd64)和armhf架构上都受支持

卸载旧版本

老版本的Docker被称为dockerdocker-engine如果这些已安装,请将其卸载:

$ sudo apt-get remove docker docker-engine docker.io

如果apt-get报告说没有安装这些软件包,那就行了。

/var/lib/docker/包括图像,容器,卷和网络的内容将被保留。现在调用Docker CE包docker-ce

Wheezy 7.7的额外步骤

  • 您至少需要Linux内核的3.10版本。Debian Wheezy随附3.2版本,因此您可能需要 更新内核要检查你的内核版本:

    $ uname -r
    
  • 启用backports存储库。请参阅 Debian文档

安装Docker CE

您可以根据您的需要以不同的方式安装Docker CE:

  • 大多数用户 设置Docker的存储库并从中进行安装,以便安装和升级任务。这是推荐的方法,除了Raspbian。

  • 有些用户下载DEB软件包并 手动安装,并完全手动管理升级。这对于在无法访问互联网的空隙系统上安装Docker等情况很有用。

  • 在测试和开发环境中,一些用户选择使用自动 便利脚本来安装Docker。这是目前Raspbian的唯一方法。

使用存储库进行安装

首次在新主机上安装Docker CE之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。

Raspbian用户不能使用这种方法!

对于Raspbian,尚未支持使用存储库进行安装。你必须改用便利的脚本

设置存储库
  1. 更新apt包裹索引:

    $ sudo apt-get update
    
  2. 安装软件包以允许apt通过HTTPS使用存储库:

    $ sudo apt-get install \
         apt-transport-https \
         ca-certificates \
         curl \
         gnupg2 \
         software-properties-common
    

  3. 添加Docker的官方GPG密钥:

    $ curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -
    

    9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88通过搜索指纹的最后8个字符,确认您现在拥有带指纹的密钥 

    $ sudo apt-key fingerprint 0EBFCD88
    
    pub   4096R/0EBFCD88 2017-02-22
          Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
    uid                  Docker Release (CE deb) <docker@docker.com>
    sub   4096R/F273FCD8 2017-02-22
    
  4. 使用以下命令设置稳定的存储库。即使您想从边缘测试存储库安装构建,也总是需要稳定的存储 库。要添加边缘或 测试存储库,请在下面的命令中添加单词(或两者)后面的单词edgeteststable

    注意:下面的lsb_release -cs子命令返回您的Debian发行版的名称,例如jessie

    要添加边缘存储库,请edgestable该命令的最后一行添加

    $ sudo add-apt-repository \
       "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
       $(lsb_release -cs) \
       stable"
    

  5. Wheezy onlyWheezy上的版本add-apt-repository添加了一个deb-src 不存在存储库。你需要注释掉这个版本库或者运行apt-get update失败。编辑/etc/apt/sources.list找到如下所示的行,并将其注释掉或删除它:

    deb-src [arch=amd64] https://download.docker.com/linux/debian wheezy stable
    

    保存并退出文件。

    注意:从Docker 17.06开始,稳定版本也被推到边缘测试版本库。

    了解稳定边缘频道

安装DOCKER CE

注意:此过程适用于Debian x86_64amd64,Debian ARM或Raspbian。

  1. 更新apt软件包索引。

    $ sudo apt-get update
    
  2. 安装最新版本的Docker CE,或转到下一步安装特定版本。任何现有的Docker安装都会被替换。

    $ sudo apt-get install docker-ce
    

    有多个Docker存储库?

    如果启用了多个Docker存储库,则安装或更新时如果未指定版本apt-get install或 apt-get update命令,则始终会安装尽可能高的版本,这可能不适合您的稳定性需求。

  3. 在生产系统上,您应该安装特定版本的Docker CE,而不是始终使用最新版本。此输出被截断。列出可用的版本:

    $ apt-cache madison docker-ce
    
    docker-ce | 17.12.0~ce-0~debian | https://download.docker.com/linux/debian jessie/stable amd64 Packages
    

    列表的内容取决于启用了哪些存储库。选择一个特定的版本进行安装。第二列是版本字符串。第三列是存储库名称,它指示软件包来自哪个存储库并且通过扩展其稳定性级别。要安装特定版本,请将版本字符串附加到包名称,并用等号(=将它们分开

    $ sudo apt-get install docker-ce=<VERSION_STRING>
    

    Docker守护进程自动启动。

  4. 通过运行hello-world 映像验证是否正确安装了Docker CE 

    x86_64

    $ sudo docker run hello-world
    

    armhf

    $ sudo docker run armhf/hello-world
    

    该命令下载测试图像并将其运行到容器中。当容器运行时,它会打印一条信息消息并退出。

Docker CE已安装并正在运行。docker组已创建,但未添加用户。您需要使用sudo运行Docker命令。继续Linux postinstall以允许非特权用户运行Docker命令以及其他可选配置步骤。对于Raspbian,您可以选择 安装Raspbian的Docker Compose

升级DOCKER CE

要升级Docker CE,首先运行sudo apt-get update,然后按照 安装说明选择要安装的新版本。

从包中安装

如果你不能使用Docker的版本库来安装Docker CE,你可以下载 .deb你的版本文件并手动安装。每次要升级Docker时,都需要下载一个新文件。

  1. 转到https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/dists/选择您的Debian版本,浏览到pool/stable/,选择 amd64或者armhf,然后下载.deb您想要安装的Docker CE版本文件。

    注意:要安装边缘 软件包,stable请将URL中的单词更改 edge。 了解稳定边缘频道

  2. 安装Docker CE,将下面的路径更改为您下载Docker软件包的路径。

    $ sudo dpkg -i /path/to/package.deb
    

    Docker守护进程自动启动。

  3. 通过运行hello-world 映像验证是否正确安装了Docker CE 

    $ sudo docker run hello-world
    

    该命令下载测试图像并将其运行到容器中。当容器运行时,它会打印一条信息消息并退出。

Docker CE已安装并正在运行。docker组已创建,但未添加用户。您需要使用sudo运行Docker命令。继续进行Linux的安装后步骤, 以允许非特权用户运行Docker命令以及其他可选配置步骤。对于Raspbian,您可以选择 安装Raspbian的Docker Compose

升级DOCKER CE

要升级Docker,请下载较新的软件包文件并重复 安装过程,指向新文件。

使用便捷脚本进行安装

Docker在get.docker.com 和test.docker.com上提供了便捷脚本,用于快速非交互式地将Docker CE的边缘和测试版本安装到开发环境中。脚本的源代码位于 docker-install存储库中。 不建议在生产环境中使用这些脚本,并且在使用它们之前应了解其潜在风险:

  • 脚本需要rootsudo权限才能运行。因此,在运行脚本之前,应仔细检查和审核脚本。
  • 这些脚本会尝试检测您的Linux发行版和版本,并为您配置您的软件包管理系统。另外,这些脚本不允许您自定义任何安装参数。这可能会导致不支持的配置,无论是从Docker的角度还是从您自己的组织准则和标准。
  • 这些脚本会安装包管理器的所有依赖关系和建议,而不要求确认。这可能会安装大量的包,具体取决于主机的当前配置。
  • 该脚本不提供指定要安装哪个版本的Docker的选项,并安装在“边缘”通道中发布的最新版本。
  • 如果Docker已经使用其他机制安装在主机上,请勿使用便捷脚本。

本示例使用get.docker.com的脚本在Linux上安装Docker CE的最新版本。要安装最新的测试版本,请改用test.docker.com在下面的每个命令,取代每次出现gettest

警告

在本地运行之前,始终检查从互联网上下载的脚本。

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

<output truncated>

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group grants the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.

Docker CE已安装。它会自动启动DEB基于目录的分发。在 RPM基于分布的情况下,您需要使用适当systemctlservice命令手动启动它 如消息所示,非root用户默认情况下不能运行Docker命令。

在使用便利脚本后升级DOCKER

如果您使用便捷脚本安装Docker,则应直接使用软件包管理器升级Docker。重新运行便捷脚本没有任何优势,如果它试图重新添加已添加到主机的存储库,则会产生问题。

为Raspbian安装Docker Compose

您可以使用pip以下方法安装Docker Compose 

$ sudo pip install docker-compose

Hypriot提供了docker-composeRaspbian 的静态二进制它可能并不总是最新的,但如果空间有限,你可能会觉得它很有用。要使用它,首先按照Hypriot 关于设置存储库的 说明,然后运行以下命令:

sudo apt-get install docker-compose

卸载Docker CE

  1. 卸载Docker CE软件包:

    $ sudo apt-get purge docker-ce
    
  2. 不会自动删除主机上的图像,容器,卷或自定义配置文件。删除所有图像,容器和卷:

    $ sudo rm -rf /var/lib/docker
    

您必须手动删除任何已编辑的配置文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值