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. Python-100道练习题答案

    题目链接:http://www.runoob.com/python/python-100-examples.html #5. # def find_max(): # a=int(input(" ...

  2. impdp如何杀掉job

    今天刚执行一个impdp操作发现,硬盘空间可能不够了,赶紧按了Ctrl+C,结果发现磁盘空间仍然在减少.问了一下部门oracle专家,Ctrl+C是无法停止impdp的job的.需要将job进行att ...

  3. linux子系统ubuntu16.04安装使用xrdp当远程桌面

    参考文献:https://icytown.com/windows/windows-subsystem-for-linux-gui-xubuntu/ https://jingyan.baidu.com/ ...

  4. <canvas>中isPointInPath()方法在不同绘制内容中的效果

    <canvas>是HTML5中新增加的一个元素,我们可以使用脚本(通常使用JavaScript)在上面绘制图形,就像个画布一样.我们可以用它来绘制图表.制作一些动画.默认大小为300px ...

  5. sosreport-汇总收集linux系统信息

    有时候我们想将Linux服务器信息一次性查询并导出发送给他人,我们可以使用这个sosreport这个工具 安装  yum install sos -y 收集信息 sosreport 收集到的信息默认保 ...

  6. DOM 基础

    文档对象模型(Document Object Model)是表示和处理一个HTML或XML文档的常用方法 查找 直接查找 var obj = document.getElementById('i1') ...

  7. centos7配置iscsi

    什么是ISCSI iscsi--internet small computer system interface互联小型计算机系统接口,将数据包封装在TCP/IP协议中传输,使用普通网线和网络设备即可 ...

  8. c# 使用http摘要认证

    .net 使用http摘要认证,返回json数据 using System; using System.Collections.Generic; using System.Linq; using Sy ...

  9. 利用微信支付的订单查询接口可以在APP 中提高支付的可靠性

    最近公司有一个应用,用户可以在微信公众号上面下单,也可以在APP 中下单. 当用户在公共号上面下单时,微信支付成功可以返回微信支付单号,但是在APP 中用户微信支付时,个别时候会出现用户已经付款成功, ...

  10. react的学习笔记

    React中几个核心的概念### 虚拟DOM(Virtual Document Object Model) + **DOM的本质是什么**:浏览器中的概念,用JS对象来表示 页面上的元素,并提供了操作 ...