linux环境docker安装配置

docker一键安装脚本

由于在CentOS下安装docker本人最常用,所以将命令写成一键安装脚本,默认安装最新稳定版,将以下内容保存成dockerIntall.sh并执行sh dockerIntall.sh

  • 非国内版
#!/bin/bash
# remove old version
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

# remove all docker data 
sudo rm -rf /var/lib/docker

#  preinstall utils 
sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

# add repository
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# make cache
sudo yum makecache fast

# install the latest stable version of docker
sudo yum install -y docker-ce

# start deamon and enable auto start when power on
sudo systemctl start docker
sudo systemctl enable docker

# add current user 
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo systemctl restart docker
  • 国内版,需要设置网络加速,国内和docker官网网络不通
#!/bin/bash
# 移除掉旧的版本
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

# 删除所有旧的数据
sudo rm -rf /var/lib/docker

#  安装依赖包
sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

# 添加源,使用了阿里云镜像
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 配置缓存
sudo yum makecache fast

# 安装最新稳定版本的docker
sudo yum install -y docker-ce

# 配置镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF

# 启动docker引擎并设置开机启动
sudo systemctl start docker
sudo systemctl enable docker

# 配置当前用户对docker的执行权限
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo systemctl restart docker

注意:国内访问docker太慢,一般会配置加速器,此处配置的加速器是163的加速器:http://hub-mirror.c.163.com,也可以配置阿里云的加速器

CentOS安装docker

CentOS 是RedHat Linux社区版本,其特点是相当稳定,非常适合作为服务器使用,一般没有特殊要求,我都会优先选用此Linux发行版。

系统要求

  • 安装docker CE需要CentOS 7的维护版本,存档版本(没在维护的版本)不支持
  • 必须开启centos-extras仓库,默认是打开的,如果被关闭了,需要重新打开
  • 推荐使用overlay2存储驱动,overlay也可以但是不推荐。overlay2要求Linux内核为4.0+

卸载旧版本

旧版本的docker叫做docker或者docker-engine ,如果有安装,先卸载其以及其依赖,新版本的docker叫做docker-ce
/var/lib/docker/目录下的镜像文件,容器,卷和网络将会被保留,不会被删除。

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

安装

有三种安装办法:

  • 在软件源内添加docker,并且安装,这样安装和升级比较方便,官方推荐。
  • 下载RPM包手动安装,手动升级,一般在与互联网隔绝的情况下使用此方法。
  • 官方一键安装脚本,上面说过,此处不再赘述。

添加源进行安装

首先安装docker的仓库,你可以从这个仓库中安装或者升级docker。

设置仓库

  1. 安装依赖包,yum-utils提供yum-config-manager工具,devicemapper存储驱动需要device-mapper-persistent-datalvm2
$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
  1. 使用下面的命令安装稳定版仓库,即使安装最新体验版或者是测试版也需要稳定版仓库。
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  1. 可选:体验版和测试版默认是关闭的,你可以通过下面的命令打开,不打开也不影响稳定版的使用。
$ # 打开体验版与测试版
$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-test

$ # 关闭体验版与测试版
$ sudo yum-config-manager --disable docker-ce-edge
$ sudo yum-config-manager --disable docker-ce-test

注意:从docker17.06开始,稳定版也同样会被推送到体验版和测试版的仓库里

安装docker CE

  1. 安装最新版本的docker CE
$ sudo yum install -y docker-ce

以上命令始终安装docker CE最新版本,如果提示接受GPG key,官方说检查指纹是否是
060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,是的话,就接受,不过我在安装的过程中没有遇见。
注意:如果安装了多个docker仓库,使用yum install或者yum update命令时后面不跟版本信息的话,将始终安装最高版本的docker!

  1. 安装指定版本的docker CE
    列出版本,版本号从高到低
$ yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
docker-ce.x86_64            17.03.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos             docker-ce-stable

安装指定版本的docker CE,需要指定完整的包名称,例如安装仓库中的这个版本 18.03.0.ce-1.el7.centos ,其命令为

$ sudo yum install -y docker-ce-18.03.0.ce

其他版本同理
启动docker CE
启动其实是启动docker deamon,即docker守护进程/docker引擎

$ sudo systemctl start docker

以上即是CentOS从仓库中安装docker CE的全部过程,如果需要升级的话,移除之前的docker,再重复上面的过程即可。

从RPM包安装

RPM包在没有网络的时候就特别管用了,找一台有网络的电脑下载RPM包,这个官方地址列出了所有CentOS版本的docker,选择一个进行下载。
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
比如我下载的文件叫做(在当前目录
docker-ce-18.09.0-3.el7.x86_64.rpm
执行

$ sudo yum install -y docker-ce-18.09.0-3.el7.x86_64.rpm

启动守护进程

$ sudo systemctl start docker

卸载

移除docker

$ sudo yum remove docker-ce

移除镜像,容器,卷,网络,自定义文件等

$ sudo rm -rf /var/lib/docker

Ubuntu安装docker

Ubuntu是国内乃至全球热门的Linux发行版。也是各种推荐入门Linux爱好者安装的一个Linux发行版。

系统要求

需要64bit的以下任何Ubuntu版本:

  • Bionic 18.04 (LTS)
  • Xenial 16.04 (LTS)
  • Trusty 14.04 (LTS)
  1. CE支持x86_64, armhf, s390x (IBM Z), and ppc64le (IBM Power)架构的Ubuntu

注意ppc64les390x架构下,只支持Xenial以上的Ubuntu

卸载旧版本

旧版本的docker叫做docker或者docker-engine ,如果有安装,先卸载其以及其依赖,新版本的docker叫做docker-ce
/var/lib/docker/目录下的镜像文件,容器,卷和网络将会被保留,不会被删除。

$ sudo apt-get remove docker docker-engine docker.io containerd runc

支持的存储驱动

Ubuntu上的docker CE支持overlay2 和aufs存储驱动

  • Linux 4.X内核极其以上才支持overlay2,并且overlay2表现的比aufs好
  • Linux 3.X内核不支持overlay或overlay2,但是支持aufs

除非有特殊理由要用aufs没否则不建议,如果要使用aufs,需要额外的准备工作:

  • Trusty 14.04:
$ # 安装linux-image-extra-*包,让docker支持aufs
$ sudo apt-get update

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

安装

有三种安装办法:

  • 在软件源内添加docker,并且安装,这样安装和升级比较方便,推荐这种方法。
  • 下载DEB包手动安装,手动升级,一般在与互联网隔绝的情况下使用此方法。
  • 官方一键安装脚本,上面说过,此处不再赘述。

添加源进行安装

首先安装docker的仓库,你可以从这个仓库中安装或者升级docker。

设置仓库

  1. 升级apt包索引
$ sudo apt-get update
  1. 安装能够让apt使用HTTPS的包
$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common
  1. 添加官方的GPG key
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

查看现在是否拥有了指纹9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88的密匙,执行下面搜索命令,如果有类似回显说明拥有此密匙。

$ sudo apt-key fingerprint 0EBFCD88
pub   4096R/0EBFCD88 2017-02-22
      Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid                  Docker Release (CE deb) <docker@docker.com>
sub   4096R/F273FCD8 2017-02-22
  1. 设置稳定版源
    必须安装稳定版源,即使安装体验版或者测试版也需要稳定版源,不同架构的机器需要不同安装命令,lsb_release -cs命令会返回是哪种Debian发行版,比如xenial,如果想安装体验版(edge)或者测试版(test),将命令中的stable换成相应的字符串即可。
$ # x86_64 / 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"


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


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


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

注意:从docker17.06开始,稳定版也同样会被推送到体验版和测试版的仓库里

安装docker CE

  1. 升级apt包索引
$ sudo apt-get update
  1. 安装最新版本的docker CE
$ sudo apt-get install docker-ce

注意:如果安装了多个docker仓库,使用apt-get install或者apt-get update命令时后面不跟版本信息的话,将始终安装最高版本的docker!

  1. 安装指定版本的docker CE
    列出版本,版本号从高到低
$ apt-cache madison docker-ce
docker-ce | 18.09.0~ce-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages

安装指定版本的docker CE,需要指定完整的包名称,例如安装仓库中的这个版本 18.09.0~ce-0~ubuntu ,其命令为

$ sudo apt-get install docker-ce=18.03.0~ce-0~ubuntu

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值