前言:
Docker分为开源免费的CE(Community Edition)版本和收费的EE(Enterprise Edition)版本,本文安装社区版,该版本也是开发人员和小型团队的理想选择。
版本要求:
Cosmic 18.10
Bionic 18.04 (LTS)
Xenial 16.04 (LTS)
Docker CE支持以上版本的Ubuntu 64位系统,本文的操作系统版本为:16.04.5 LTS (Xenial Xerus)
root@ubuntu1604:~# more /etc/os-release
NAME="Ubuntu"
VERSION="16.04.5 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.5 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
ubuntu安装详见:Ubuntu16.04.5以lvm方式安装全记录
操作系统已配置阿里源并允许root直接登录。
一、安装
1.卸载旧的docker版本
root@ubuntu1604:~# root@ubuntu1604:~# apt-get remove docker docker-engine docker.io containerd runc
如果之前未装老版本docker,该步骤可忽略。
2.更新软件列表
root@ubuntu1604:~# apt-get update
3.允许apt命令可以使用HTTPS访问Docker repository
root@ubuntu1604:~# apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
4.添加Docker官方的GPG key
root@ubuntu1604:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
验证key
root@ubuntu1604:~# apt-key fingerprint 0EBFCD88
搜索后8位即可显示完成秘钥
5.设置repository版本为stable并更新软件列表
root@ubuntu1604:~# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
root@ubuntu1604:~# apt-get update
Docker CE有三种更新方式:stable、test and nightly,具体差别详见:https://docs.docker.com/install/
6.安装Docker CE和containerd
root@ubuntu1604:~# apt-get install docker-ce docker-ce-cli containerd.io
查看docker版本
root@ubuntu1604:~# docker --version
Docker version 18.09.2, build 6247962
由于网络原因,安装过程可能会失败,重新执行安装命令即可。该方式安装的为最新版的Docker CE和containerd,版本为18.09.2
如果需要安装指定版本,可进行如下操作:
可用版本查询
root@ubuntu1604:~# apt-cache madison docker-ce
第二列即为版本列表
指定版本的安装命令
apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
比如安装18.09.0这个版本
root@ubuntu1604:~# apt-get install docker-ce=18.06.2~ce~3-0~ubuntu docker-ce-cli=18.06.2~ce~3-0~ubuntu containerd.io
7.运行容器
运行apache
root@ubuntu1604:~# docker run -d -p 80:80 httpd
访问apache
容器运行正常
二、镜像加速器
由于Docker Hub的服务器在国外,下载镜像会比较慢,可以配置镜像加速器。主要的加速器有:Docker官方提供的中国registry mirror、阿里云加速器、DaoCloud 加速器,本文以阿里加速器配置为例。
1.登陆阿里云容器模块
登陆地址为:https://cr.console.aliyun.com,未注册的可以先注册阿里云账户
选择镜像加速器,操作系统选ubuntu
2.配置镜像加速器
配置daemon.json文件
root@ubuntu1604:~# mkdir -p /etc/docker
root@ubuntu1604:~#tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://v16stybc.mirror.aliyuncs.com"]
}
EOF
重启服务
root@ubuntu1604:~# systemctl daemon-reload
root@ubuntu1604:~# systemctl restart docker
加速器配置完成
三、命令补全
通过bash_complete脚本,docker提供自动补全功能,在执行该命令时,敲tab即可自动补全参数,大大提高命令输入效率。
1.安装bash-completion
root@ubuntu1604:~# apt install bash-completion
2.加载bash-completion
root@ubuntu1604:~# source /etc/bash_completion
此时即可使用tab进行命令补全:
四、卸载
1.卸载Docker CE安装包
root@ubuntu1604:~# apt-get purge docker-ce
2.删除相关目录和配置文件
root@ubuntu1604:~# rm -rf /var/lib/docker
root@ubuntu1604:~# rm -rf /etc/docker
如果其他路径有docker相关配置文件或目录,一并删除。
本文参考: