Ubuntu环境下安装Docker

1. 系统要求

Docker目前只能运行在64位平台上,并且要求内核版本不低于3.10,实际上内核越新越好,过低的内核版本容易造成功能不稳定。

可以通过如下命令检查自己的内核版本详细信息:

$ uname -a

或者

$ cat /proc/version

Docker目前支持的最低Ubuntu版本为12.04LTS,但实际上从稳定性上考虑,推荐至少使用14.04LTS版本

查看Ubuntu版本号命令为

$ lsb_release -r

查看Ubuntu代号命令为

$ lsb_release -c

不同Ubuntu版本号及代号如下

Artful 17.10 (Docker CE 17.11 Edge)、Zesty 17.04、Xenial 16.04 (LTS)、Wily 15.10、Vivid 15.04、Trusty 14.04 (LTS)、Precise 12.04(LTS)

如果使用12.04LTS版本,首先要更新系统内核和安装可能需要的软件包,包括:

  linux-image-generic-lts-trusty(必备)

  linux-headers-generic-lts-trusty(必备)

  xserver-xorg-lts-trusty(带图形界面时必备)

  libgll-mesa-glx-lts-trusty(带图形界面时必备)

另外,从 Ubuntu 14.04 开始,一部分内核模块移到了可选内核模块包 (linux-image-extra-*) ,以减少内核软件包的体积。正常安装的系统应该会包含可选内核模块包,而一些裁剪后的系统可能会将其精简掉。AUFS 内核驱动属于可选内核模块的一部分,为了让Docker使用aufs存储,推荐安装linux-iamge-extra软件包。

$ sudo apt-get insall -y linux-image-extra-$(uname -r)

 2. 添加镜像源

正式操作前建议先更新一下apt 的缓存,尤其是安装完Ubuntu之后第一次运行

$ sudo apt-get update

首先需要安装apt-transport-https包支持HTTPS协议的源,以及CA证书:

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

其次添加源的gpg密钥:

  国内源地址

$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

  官方源地址

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

再次添加Docker的apt软件源:

  可以使用如下命令添加apt软件源

  国内源:

$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable"

  官方源:

$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"

  另外,《Docker技术入门与实战》第2版中的方法是通过下面的命令创建/etc/apt/sources.list.d/docker.list文件,并写入源地址内容,注意修改自己系统对应的代号。书中安装的trusty版本,我想安装artful版本。

$ sudo cat <<EOF > /etc/apt/sources.list.d/docker.list
> deb https://apt.dockerproject.org/repo ubuntu-atrful main
> EOF

  然而在下面的一步更新apt软件包缓存时出错,访问上述https地址出错,报403 Forbidden错。后来进入上面的地址查看,发现上面地址最晚更新时间为2017年,最新版本为ubuntu-xenial,并没有artful版本。因此Ubuntu系统为16.04及以下的可以使用该方法。

最后,添加完Docker源,更新apt软件包缓存

$ sudo apt-get update

还可以使用如下命令来查看有哪些版本的Docker可以使用

$ apt-cache policy docker-ce

$ apt-cache policy docker-engine

  注意,2017年的3月1号之后,Docker的版本命名开始发生变化,同时将CE版本和EE版本进行分开,CE是社区版,EE是企业版。查看artful版本时,使用docker-ce,而使用docker-engine则查不到。xenial 版本及之前的,还可以使用docker-engine。

3. 开始安装Docker

在成功添加源之后,就可以安装最新版本的docker了,artful及之后版本使用docker-ce,xenial及之前版本使用docker-engine。

$ sudo apt-get install docker-ce

$ sudo apt-get install docker-engine

如果系统中存在较旧版本的Docker,会提示是否先删除,选择“是”即可。

另外,还可以使用脚本自动安装
在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,Ubuntu 系统上可以使用这套脚本安装:

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh --mirror Aliyun
执行这个命令后,脚本就会自动的将一切准备工作做好,并且把 Docker CE 的 Edge 版本安装在系统中。

4. 启动 Docker CE

$ sudo systemctl enable docker
$ sudo systemctl start docker

Ubuntu 14.04 请使用以下命令启动,atrful版本无法使用以下命令:

$ sudo service docker start

5. 验证Docker是否安装成功

运行如下命令,Docker会下载一个镜像,并运行在一个窗口中,输出信息

$ sudo docker run hello-world

6. 将当前用户添加到安装中自动创建的docker用户组:

$ sudo usermod -aG docker $USER

Ubuntu17.10安装Docker的更多相关文章

  1. Windows 10 安装 Docker for Windows

    Docker for Windows是Docker社区版(CE)应用程序. Docker for Windows安装包包括在Windows系统上运行Docker所需的一切. 本主题介绍了预安装注意事项 ...

  2. windows 10安装docker一直挂起在Installing Components and Removing Files

    碰到这个问题百度了好久都没有找到解决方式,什么用管理员方式运行,给文件夹权限啊,都不好使. 后面在bing上面搜docker install compoents关键字找到一条结果,如下如 点进链接,内 ...

  3. ubuntu17.10安装LAMP并测试部署php探针系统

    ubuntu17.10修改密码以及安装LAMP并部署php探针系统 步骤1:ubuntu17.10配置IP (这个版本配置IP方式改变较大,apt-get upgrade更新至最新以前配置方式也可以用 ...

  4. ubuntu17.10 安装CUDA

    1. 更新apt-get源列表 sudo apt-get update sudo apt-get upgrade 2. 添加驱动源 sudo add-apt-repository ppa:graphi ...

  5. ubuntu17.10安装lnmp安装包的核心问题-gcc版本、g++版本

    大致碰到的问题都是这样,不是php安装失败,就是MySQL安装失败,或者Nginx也安装失败 基本上是花式报错.后来在军哥的论坛中找到了这个帖子:https://bbs.vpser.net/viewt ...

  6. Windows 10 安装 Docker

    下载Docker For Windows 地址:https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.ex ...

  7. Windows 10安装Docker 步骤及顺序

    最近在工作中,重新安装Docker时,遇到了一点坑,故将自己解决经验分享一下~ Hardware assisted virtualization and data execution protecti ...

  8. docker学习 (三) Windows 10 安装Docker

    Docker CE: 社区版,免费. Docker EE: 企业版,收费. 安装:             Windows 10 Pro 64, 必须开启Hyper-v 下载:Docker for W ...

  9. ubuntu-17.10 安装 FANN

      因为想用C语言写神经网络,不用已有的库的话,又太难了,所以准备安装一个夸平台的FANN库, 源文件下载地址http://leenissen.dk/fann/wp/download/,我下载的是最新 ...

随机推荐

  1. Android与Linux内核的对应关系

    1. Android各版本和Linux版本对应关系 Android Version |API Level |Linux Kernel in AOSP ------------------------- ...

  2. zeebe 集成elasticsearch exporter

    zeebe 目前还在一直的开发中,同时一些变动还是挺大的,比如simple monitor 的以前是不需要配置HazelcastExporter的 估计是为了进行集群功能处理,新添加的,以前写的配置基 ...

  3. [转]Linux中python3.6+ipython+Jupyter Notebook环境

    python3.6安装 下载python安装包,这里下载的最新的3.6.1版本 https://www.python.org/ftp/python/3.6.1/ 将安装包上传到服务器并解压 tar z ...

  4. zabbix批量添加被监控windows客户端

    由于公司大部分用的是windows服务器,大概有50多台.如果是一台一台添加的话很是麻烦,如果数量更多的话那工作量可想而知.所以网络管理员通常都是非常懒的. 环境:公司虽是域环境,但是除了几台域服务器 ...

  5. C#用反射实现两个类的对象之间相同属性的值的复制

    在进行实体转换操作的时候如果需要在对两个实体之间两个属性字段差不多相同的类要进行一个互相的转换,我们要把a对象的所有字段的值都复制给b对象,我们只能用b.属性=a.属性来写,如果属性字段太多的话,就要 ...

  6. 【java】之算法复杂度o(1), o(n), o(logn), o(nlogn)

    在描述算法复杂度时,经常用到o(1), o(n), o(logn), o(nlogn)来表示对应算法的时间复杂度, 这里进行归纳一下它们代表的含义: 这是算法的时空复杂度的表示.不仅仅用于表示时间复杂 ...

  7. (一)CentOS6.3安装Hadoop2.6.5

    1.准备环境 下载CentOS: https://www.centos.org/download/ 下载JDK: https://www.oracle.com/technetwork/java/jav ...

  8. vim YouCompleteMe 遇到的问题及解决

    问题1: 补充,升级gcc,g++ 到4.7以上的版本才能安装成功 github 官网 github https://github.com/Valloric/YouCompleteMe#ubuntu- ...

  9. IIS Express 域认证问题(https://stackoverflow.com/questions/4762538/iis-express-windows-authentication)

    option-1: edit \My Documents\IISExpress\config\applicationhost.config file and enable windowsAuthent ...

  10. redis集群报错:(error) CLUSTERDOWN Hash slot not served

    百度上坑太多,如果你遇到搭建redis集群的时候出现这个错误在百度上找到解决办法基本上都是坑. 首先集群搭建完成后,你肯定去登陆redis进行测试 1.redis01/redis-cli -h &qu ...