侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Ubuntu下安装Docker教程

Docker  /  管理员 发布于 7年前   191

安装之前,首先要满足一些先决条件。为了安装Docker,你需要是Ubuntu任意64版本。

  • Yakkety 16.10
  • xenial 16.04 [LTS]
  • Trusty 14.04 [LTS]

通过下面命令来查看当前版本。

sudo lsb_release -a

额外推荐的包

$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install curl \linux-image-extra-$(uname -r) \linux-image-extra-virtual

第一条命令用于获取最近的软件包列表信息,第二命令用于进行一次升级,第三个命令用来安装用于Docker的aufs存储驱动器。

PS:

  • 某些时候,一些Linux镜像变体往往通过删除不常见的模块(驱动器)的进行瘦身, 在这种情况下,linux-image-extra包简单地包含所有被省略的“额外”内核模块。这种情况只发生在-virtual 镜像中; 最常见的虚拟机管理程序(Virtualbox,VMWare,Xen,KVM)模拟了一套定义完好且受限制的硬件集,因此删除不必要的驱动程序来减少kernel / initrd的大小。 您可以随时通过安装extras包来获得它们。
  • uname 用于获取当前操作系统的信息,uname -r 用于获取当前内核的版本号。

安装Docker

  • 大多数用户设置Docker仓库,并从中进行安装,便于升级。(推荐方法)
  • 一些用户下载DEB包,手动地进行安装和进行升级。
  • 一些用户依赖伴随他们操作系统的Docker版本,这可能已经过时了。这些用户应查阅其操作系统文档,而不遵循这些步骤。

使用仓库进行安装

在你第一次且在一台新机器上安装前,你需要设置Docker仓库,之后,您可以从存储库安装,更新或降级Docker。

设置仓库

1.安装软件包,来使得apt能够基于HTTPS使用仓库:

$ sudo apt-get install apt-transport-https \ca-certificates

2. 添加Docker的官方GPG 公钥:

$ curl -fsSL https://yum.dockerproject.org/gpg | sudo apt-key add -

apt-key add <file>命令用于将公钥添加到指定的文件,- 对应于标准输入。

3.验证公钥ID:58118E89F3A912897C070ADBF76221572C52609D。

$ apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D pub  4096R/2C52609D 2015-07-14    Key fingerprint = 5811 8E89 F3A9 1289 7C07 0ADB F762 2157 2C52 609D uid         Docker Release Tool (releasedocker) <[email protected]>t

4.使用下面命令来设置稳定仓库,也可以激活测试仓库,只需在最后一行main后面加上testing即可。

$ sudo add-apt-repository \    "deb https://apt.dockerproject.org/repo/ \    ubuntu-$(lsb_release -cs) \    main"

为了禁用testing仓库,你需要编辑/etc/apt/sources.list,并且在对应行中移除单词testing即可。

add-apt-repository 命令(实质是个Python脚本)在source.list里添加 ppa 源(同时完成导入key)。

安装Docker

1.更新apt包索引:

sudo apt-get update

2.安装最新版本的Docker,将会替换掉任意已经存在的Docker。

$ sudo apt-get -y install docker-engine

注意:如果您启用了稳定和不稳定的仓库,则在apt-get install或apt-get update命令中在不指定版本的情况下安装或更新将始终安装尽可能高的版本,这几乎肯定是不稳定的版本。

3.在生产环境中,你应该安装指定的版本而不是最新的。下面输入列出所有可用的版本。

$ apt-cache madison docker-enginedocker-engine | 1.13.0-0~xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packagesdocker-engine | 1.12.3-0~xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packagesdocker-engine | 1.12.2-0~xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packagesdocker-engine | 1.12.1-0~xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages

4.安装指定的版本:

$ sudo apt-get -y install docker-engine=<VERSION_STRING>

Docker的守护进程将会自动启动。

5.运行hello-world镜像来验证Docker已经被正确安装。

$ sudo docker run hello-world

这个命令下载一个测试镜像,在容器中运行,当容器运行的时候,它打印出一些消息信息。

Docker已经安装运行了,你需要使用sudo命令运行Docker命令。

升级Docker

为了升级Docker,首先运行sudo apt-get upgrade,然后遵循安装指令,选择你想要安装的最新版本。

从安装包进行安装

如果你不使用Docker仓库进行安装,你可以下载.deb包,手动地进行安装,每一次升级Docker,你将需要下载一个新的文件。

1.下载特定ubuntu系统的指定Docker版本,访问地址:https://apt.dockerproject.org/repo/pool/main/d/docker-engine

2.安装docker的deb包:

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

升级Docker

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

 卸载Docker

1.卸载Docker包:

$ sudo apt-get purge docker-engine

2.在你主机上的镜像, 容器, 卷, 或者 自定义配置文件不会自动删除,需要你手动删除。

$ sudo rm -rf /var/lib/docker

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


  • 上一条:
    详解使用docker搭建hadoop分布式集群
    下一条:
    Docker基础 :网络配置详解
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在docker环境中实现Laravel项目执行定时任务和消息队列流程步骤(0个评论)
    • 在MacBook下laravel项目多php版本docker开发环境配置方案(0个评论)
    • 在docker环境中部署docker部署elk架构流程步骤(1个评论)
    • docker compose跟Dockerfile的区别浅析(0个评论)
    • Ubuntu 22.04系统中安装podman流程步骤(1个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-11
    • 2020-06
    • 2021-05
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-03
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-11
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客