Docker 在CentOS 7系统的安装

官方文档参考:https://docs.docker.com/install/linux/docker-ce/centos/

1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2


2: 添加软件源信息
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #添加阿里云的安装源

官网源安装如下:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
或者 下载repo文件放到/etc/yum.repo.d/目录 (wget https://download.docker.com/linux/centos/docker-ce.repo)

3: 更新源并安装 Docker-CE
yum makecache fast
yum -y install docker-ce

如若此前有安装过,先进行卸载:
yum remove -y docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

4: 开启Docker服务
systemctl start docker
docker info

安装指定版本的Docker-CE:
Step 1: 查找Docker-CE的版本:
yum list docker-ce.x86_64 --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: branch, fastestmirror, langpacks

docker-ce.x86_64 17.03.1.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
Available Packages

Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
yum -y install docker-ce-[VERSION]

注意:在某些版本之后,docker-ce安装出现了其他依赖包,如果安装失败的话请关注错误信息。例如 docker-ce 17.03 之后,需要先安装 docker-ce-selinux。
yum list docker-ce-selinux- --showduplicates | sort -r
yum -y install docker-ce-selinux-[VERSION]

 

阿里云ECS内网机器安装:
# 通过经典网络、VPC网络内网安装时,用以下命令替换Step 2中的命令
# 经典网络:
yum-config-manager --add-repo http://mirrors.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
# VPC网络:
yum-config-manager --add-repo http://mirrors.could.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo

 

下载依赖包,自制本地yum源
yum -y install yum-utils.noarch
yumdownloader --resolve --destdir=/root/docker-rpm device-mapper-persistent-data
yumdownloader --resolve --destdir=/root/docker-rpm lvm2
yumdownloader --resolve --destdir=/root/docker-rpm docker-ce
cd /root/docker-rpm
createrepo ./
vim /etc/yum.repos.d/docker-rpm.repo

[docker-rpm]
name=docker-rpm
baseurl=file:///root/docker-rpm
enable=1
gpgcheck=0

yum repolist

安装校验
docker version

添加内核参数
默认配置下,如果在 CentOS 使用 Docker CE 看到下面的这些警告信息:
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

请添加内核配置参数以启用这些功能。
$ sudo tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
然后重新加载 sysctl.conf 即可
$ sudo sysctl -p

镜像加速器

Docker 官方提供的中国 registry mirror
阿里云加速器(需登录账号获取)
DaoCloud 加速器
网易云加速器 https://hub-mirror.c.163.com

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)
{
"registry-mirrors": [
"https://hub-mirror.c.163.com"
]
}

之后重新启动服务。
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

Windows 10

对于使用 Windows 10 的用户,在任务栏托盘 Docker 图标内右键菜单选择Settings ,打开配置窗口后在左侧导航菜单选择 Docker Engine ,在右侧像下边一样编辑 json 文件,之后点击 Apply & Restart 保存后 Docker 就会重启并应用配置的镜像地址了。
{
"registry-mirrors": [
"https://hub-mirror.c.163.com"
]
}

macOS

对于使用 macOS 的用户,在任务栏点击 Docker Desktop 应用图标 ->Perferences ,在左侧导航菜单选择 Docker Engine ,在右侧像下边一样编辑json 文件。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。
{
"registry-mirrors": [
"https://hub-mirror.c.163.com"
]
}

 

检查加速器是否生效
执行 $ docker info ,如果从结果中看到了如下内容,说明配置成功。
Registry Mirrors:
https://hub-mirror.c.163.com/

阿里云镜像加速器:
登录阿里云,选择 容器镜像服务,即可看到如何操作:

 

 

编辑配置文件
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://4i2ux3ha.mirror.aliyuncs.com"]
}

 

 重启服务
systemctl daemon-reload
systemctl restart docker

 

查看是否成功
docker info

Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
https://4i2ux3ha.mirror.aliyuncs.com/
Live Restore Enabled: false

docker 命令:

docker image pull 是下载镜像的命令。镜像从远程镜像仓库服务的仓库中下载。

$ docker image ls

Windows示例如下。
> docker image pull microsoft/powershell:nanoserver

> docker image pull microsoft/dotnet:latest

> docker image ls

Docker镜像常用命令

docker image pull                        是下载镜像的命令。镜像从远程镜像仓库服务的仓库中下载。默认情况下,镜像会从 Docker Hub 的仓库中拉取。
docker image pull alpine:latest    命令会从 Docker Hub 的 alpine 仓库中拉取标签为 latest 的镜像。
docker image ls                           列出了本地 Docker 主机上存储的镜像。可以通过 --digests 参数来查看镜像的 SHA256 签名。docker image inspect命令非常有用!该命令完美展示了镜像的细节,包括镜像层数据和元数据。
docker image rm                          用于删除镜像。
docker image rm alpine:latest      命令的含义是删除 alpine:latest 镜像。当镜像存在关联的容器,并且容器处于运行(Up)或者停止(Exited)状态时,不允许删除该镜像

 

 

 

 

posted @ 2021-04-22 11:39  yyuuee  阅读(86)  评论(0编辑  收藏  举报