在Linux系统上安装Docker有3种方式,分别为在线安装、离线安装以及脚本文件安装,其中最常用也是官方推荐的安装方式就是在线安装。接下来将在 Ubuntu16.04系统上分别针对这3种安装方式进行详细讲解。

一、Docker在线安装教程

由于在线安装方式比较容易,且后期升级维护相对方便,所以对于大多数开发者而言,通常会选择在线安装 Docker。这种安装方式需要先设置一个 Docker 仓库,然后通过该仓库进行安装和后续更新。

1.设置Docker仓库

在新的主机上初次安装Docker CE之前,必须先设置Docker存储库,其步骤如下。

(1)更新apt的索引包。

$ sudo apt-get update

需要注意的是,在执行 apt 更新完成后,终端可能会返回如“Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi'”的子流程错误信息,这个错误是在Ubuntu16.04系统下更新apt时内部出现的问题,并不影响后续Docker的安装和使用,所以这个问题可以直接忽略。

(2)安装软件包允许apt通过HTTPS方式使用Docker仓库。

$ sudo apt-get install \

apt-transport-https \

ca-certificates \

curl \

software-properties-common

(3)添加Docker官网的GPG key。

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

(4)添加Docker稳定的仓库源(根据Ubuntu镜像版本的不同进行选择安装)。

amd64:

$ sudo add-apt-repository \

"deb [arch=amd64] https://download.docker.com/linux/ubuntu \

$(lsb_release -cs) \

stable"

armhf:

$ sudo add-apt-repository \

"deb [arch=armhf] https://download.docker.com/linux/ubuntu \

$(lsb_release -cs) \

stable"

s390x:

$ sudo add-apt-repository \

"deb [arch=s390x] https://download.docker.com/linux/ubuntu \

$(lsb_release -cs) \

stable"

2.安装Docker CE

设置好Docker仓库之后,就可以从存储库中安装和更新Docker,其实现步骤如下。

(1)更新apt的索引包。

$ sudo apt-get update

(2)安装不同版本的 Docker。在安装 Docker 时,通常会根据个人情况选择安装不同的版本。为此,Docker提供了两种安装方式,一是安装默认的最新版本的Docker,二是安装指定版本的Docker,具体如下。

·安装最新版本的Docker,具体指令如下。

$ sudo apt-get install docker-ce

需要注意的是,执行上述指令后,之前存在的任何版本的Docker都会被替换。

·安装指定版本的Docker,具体指令如下。

$ sudo apt-get install docker-ce=

从上述指令可以看出,安装指定版本的 Docker 时,需要通过“=”将版本字符串附加到安装包后。

为了更好地选择指定版本的Docker,可以使用apt-cache madison指令查看Docker仓库中的Docker版本信息,具体指令如下。

$ apt-cache madison docker-ce

执行上述指令后,就会显示出当前Docker仓库提供的在线的Docker的版本信息,具体效果下图所示。

图中列表中的内容依赖于启用的存储库,其中第二列是版本字符串,第三列是存储库名称,用于指示安装包来自哪个存储库。

(3)安装完成后,可以使用sudo docker run hello-world指令运行测试,具体指令如下。

$ sudo docker run hello-world

二、Docker离线安装教程

在没有网络或者网络条件较差的情况下,我们可以选择离线安装Docker(使用DEB格式的安装文件)。这种安装方式的好处是不依赖于网络,但其缺点是后期使用时需要手动升级和维护,并且每次升级时都需要下载一个新的.deb文件。

1.下载离线安装文件

通过官方提供的地址 https://download.docker.com/linux/ubuntu/dists/,下载安装 Docker的.deb文件,访问该地址后的效果如下图所示。

上图中,需要选择自己机器所对应的Ubuntu版本。由于本书使用的是Ubuntu Xenial 16.04 (LTS)版本,所以要单击图中的 xenial 链接并进入到 pool/stable/目录下,然后根据情况选择amd64、armhf或者s390x版本的.deb文件,如下图所示。

2.使用离线文件安装Docker

通过下载的.deb文件进行Docker离线安装非常简单,只需要在Ubuntu系统的终端中执行如下指令。

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

需要注意的是,使用sudo dpkg –i指令安装Docker时,一定要指定读者下载的.deb文件所在地址,例如上面指令表示执行/path/to/路径下的package.deb文件。

三、Docker脚本文件安装

在开发和测试环境下,我们还可以使用Docker官方提供的自动化脚本文件来安装Docker,其中开发环境和测试环境下的脚本文件下载地址分别为 https://get.docker.com/和https://test.docker.com/。

需要注意的是,这种安装方式是针对某些特定环境提供的,虽然使用此种方式可以快速地在非交互式的开发环境中安装稳定开发版本和测试版本的Docker CE,但是在实际环境下不推荐使用脚本文件来安装 Docker,所以这里对于脚本文件的 Docker 安装就不做具体介绍了,有兴趣的读者可以查看官网介绍,具体参考地址为 https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#install-using-the-convenience-script。

多学一招:Docker的开机启动和添加当前用户可执行权限

在Docker安装完成后,开发者可以根据实际需求进行其他一些相关设置,例如Docker开机启动、当前用户可执行Docker等,具体设置方式如下。

(1)配置Docker开机启动

$ sudo systemctl enable docker

(2)配置当前用户执行Docker权限(username是自己的用户名)

$ sudo usermod -aG docker username

完成上述配置后,需要重启Ubuntu系统来查看效果。

四、Docker安装时的问题及解决方法

通常情况下,严格按照前面几个小节的安装要求和方式进行Docker的安装,基本就可以正常完成Docker的安装,但在某些特殊情况下,安装过程可能会出现一些问题或者错误,本小节将对容易出现的几个问题给出解决方法。

1.Docker安装连接中断

Docker 的在线安装方式需要连接外网,所以对网速有一定的要求。在某些限网环境或者用网密集的情况下,很容易出现网速过慢、中断连接的情况,如下图所示:

从上图看出,在安装时出现了网络连接速度过慢导致了下载安装失败的问题。

针对这种网速过慢的情况,建议开发者在网络畅通的情况下重新下载安装,或者使用他人提供的.deb文件进行离线安装,当然也可以通过国内其他平台提供的Docker源进行下载安装。

2.Docker更新资源失败

Docker执行更新apt索引包并进行安装的过程中,可能会显示无法获取锁等异常情况,如下图所示。

上图中问题的原因可能是由于另外一个程序(上次运行安装或更新没有正常完成)正在使用该程序,从而导致资源被锁不可用。

这种问题解决的办法其实很简单,只需要在系统终端执行以下两条指令即可。

Docker 安装教程|在线安装、离线安装和脚本文件安装相关推荐

  1. Matlab 2018a安装教程和破解方法(附Crack文件)

    参照: Matlab 2018a安装教程和破解方法(附Crack文件) 安装完成出现错误:Matlab安装后打开出现错误:License checkout failed. License Manage ...

  2. Python安装教程步骤1:Pycharm和Anaconda的安装

    python安装教程步骤1:Pycharm和Anaconda的安装 作者介绍 1.复制pycharm和Aanconda的安装包 2. 安装pycharm 3. 安装Anaconda 作者介绍 张伟伟, ...

  3. MATLAB安装后的DOS框出现、脚本文件图标不显示、启动路径修改等问题解决

    MATLAB安装后的DOS框出现.脚本文件图标不显示.启动路径修改等问题解决 MATLAB安装方法 DOS框一闪而过问题 DOS框一闪而过问题说明 DOS框一闪而过问题解决 脚本文件图标异常问题 MA ...

  4. 未找到文件 服务器可能无此更新包文件,win7安装xampp提示windows找不到-n文件(安装成功后,443端口占用,apache服务器无法正常启动)的解决方案...

    1. 环境:win7 64位安装xampp 32位. 2. 安装过程最后,报错,提示windows找不到-n文件.以及说没有安装Microsoft Visual C++ 2008 Redistribu ...

  5. Eclipse插件安装(在线和离线方式)

    Eclipse是基于插件的,插件为Eclipse提供了极大的扩展能力.我们经常会用到一些Eclipse中没有给我提供的一些功能,比如SVN,比如Thymeleaf的编辑工具,比如ADTBundle等等 ...

  6. python包离线安装教程_Linux下离线安装Python项目的依赖包

    Linux下离线安装Python项目的依赖包 记录下在Linux下离线安装Python项目的依赖包的方法步骤.第一步新建一个site-packages文件夹,把Python项目有需要的依赖包名称导出到 ...

  7. mysql 8.0.12解压版安装教程_mysql 8.0.12 解压版安装教程

    本文为大家分享了mysql 8.0.12 解压版安装教程,供大家参考,具体内容如下 1.首先在官网上下载mysql8.0.12的压缩包:下载地址 2.下载成功后解压到任意目录,比如我的是E:\down ...

  8. 服务器系统gho系统怎么安装系统,GHOST怎么重装系统?GHO文件安装系统教程

    ghost映像文件就是系统文件,通过gho文件我们可以就进行系统的重装.不过对于电脑小白来说,不知道在哪里可以下载纯净的ghost文件,下载完成后也不清楚如何使用gho文件安装系统.那么下面就让小编教 ...

  9. Windows安装教程(Microsoft官方工具安装+PE安装教程,以及GPT分区、UEFI模式安装win7教程)

    本文主要介绍两种Windows安装方法.以及如何在GPT分区.UEFI模式中安装win7 两种方法各有优缺点. 第一种方便,PE里面很多功能,你的电脑出了什么毛病基本上都能通过PE解决.而且能安装各个 ...

最新文章

  1. 介绍两个非常好用的Javascript内存泄漏检测工具
  2. StatQuest学习笔记23——RNA-seq简介
  3. 原创 | 常见损失函数和评价指标总结(附公式代码)
  4. Fastjson反序列化漏洞研究
  5. 服务器与项目之间的关系,项目 服务器 和数据库的关系
  6. 电脑不能开机维修_MacBook维修 苹果笔记本电脑进水不开机
  7. 网卡 远程唤醒问题故障排除
  8. 统计字符个数的c语言程序设计,编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格和其他字符的个数。...
  9. 【测试用例】2021年逢面试必考题
  10. asp.net页面调用cs中的方法
  11. C# word 转 pdf
  12. 统一Retrofit失败的处理情况
  13. 03_后台管理页面商品列表查询
  14. 软件工程---gjb438b 质量规范体系
  15. 基于Matlab使用雷达和摄像头对公路车辆跟踪仿真(附源码)
  16. plc secs通讯协议_一种SECS/GEM通讯方法与流程
  17. [C#][转载]Sqlite操作大全
  18. 在线旅游网站盈利模式
  19. [linux] Linux网络之TCP协议详解
  20. IB1010音频解码芯片

热门文章

  1. android支持苹果吗,安卓手机能用苹果USB-C音频线吗?实测10款手机仅1款不支持
  2. C++11新特性(69)- sizeof...运算符
  3. opencv简单方式红绿灯状态识别
  4. 书法练字帖纸——井字格获得国家知识产权局专利证书
  5. 滴滴发布“五一”劳动节假期安全出行保障公告:应急处置人员24小时轮岗值班...
  6. 如何成为一名真正的数据分析师或者数据工程师
  7. tar.bz2文件解压缩
  8. 两岸通衢处,飞虹跨碧溪:华为OptiXstar光猫开启的千兆征途
  9. matlab编程 查普曼 pdf,电气工程及其自动化必看书单!
  10. OpenCV玩九宫格数独(三):九宫格生成与数独求解