脉金捷脉金捷
主页
  • VuePress
  • VuePress2
  • Markdown基础命令
  • Java特性
  • Java修饰符
  • Java常见问题
  • Java LocalDate
  • Java Cloud ID
  • Docker-CentOS8
  • Docker-Nginx
  • Docker-Redis
  • Docker-MySQL
  • Docker-Nacos
  • Docker-Seata
  • Docker-Nodejs
  • Docker-runlike
  • Docker基础命令
  • Linux基础软件
  • Linux-SSH登录
  • Linux防火墙-iptables
  • Linux系统目录
主页
  • VuePress
  • VuePress2
  • Markdown基础命令
  • Java特性
  • Java修饰符
  • Java常见问题
  • Java LocalDate
  • Java Cloud ID
  • Docker-CentOS8
  • Docker-Nginx
  • Docker-Redis
  • Docker-MySQL
  • Docker-Nacos
  • Docker-Seata
  • Docker-Nodejs
  • Docker-runlike
  • Docker基础命令
  • Linux基础软件
  • Linux-SSH登录
  • Linux防火墙-iptables
  • Linux系统目录
  • Docker-CentOS8
  • Docker-Nginx
  • Docker-Redis
  • Docker-MySQL
  • Docker-Nacos
  • Docker-Seata
  • Docker-Nodejs
  • Docker-runlike
  • Docker基础命令

CentOS-8 安装 Docker

Tips

我当前的系统是:CentOS-8

Docker 官网:https://docs.docker.com/

在新主机上首次安装 Docker 之前,您需要设置 Docker 存储库。之后,您可以从存储库安装和更新 Docker。

设置存储库

安装yum-utils包(提供yum-config-manager 实用程序)并设置稳定的存储库

# 安装 yum-utils 包
sudo yum install -y yum-utils
# 设置存储库
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

安装 Docker

sudo yum install docker-ce docker-ce-cli containerd.io

启动 Docker

sudo systemctl start docker

验证 Docker

可通过运行 hello-world 映像来验证 Docker 引擎是否已正确安装。

sudo docker run hello-world

此命令会下载 hello-world 测试映像,并在容器中运行它。当容器运行后,会在终端打印一条消息 “Hello from Docker!” ,最后停止 hello-world 容器运行。

查看镜像列表

我们可以通过下面的命令查看刚刚拉取的镜像。该命令会列出docker已经拉取的所有镜像列表。

docker images

查看容器状态

我们把刚刚下载的测试镜像进行删除。要注意的是,如果镜像已经创建了容器,不管该容器是运行状态还是停止状态,镜像都不可以被删除。所以,我们得先去把容器删除了,再来删除镜像。

通过下面命令,可以查看容器的运行状态。

docker ps

执行 docker ps 命令后,没有列出 hello-world 这个测试镜像所创建的容器,这是因为 docker ps 默认是列出运行中的容器状态。而 hello-world 创建的容器运行后已经停止了,所以不在列表中。我们可以在命令后加上 -a 来列出所有包含已停止运行的容器状态。

docker ps -a

删除容器

docker rm 容器名称

例如我这里的容器名称是 peaceful_cerf ,那么删除容器命令如下:

docker rm peaceful_cerf

删除容器后,我们再通过 “docker ps -a” 查看确认一下是否已删除。

删除镜像

docker rmi 镜像名称

hello-world 测试镜像所创建的容器删除后,我们就可以删除 hello-world 镜像了。

docker rmi hello-world

删除镜像后,我们再通过 “docker images” 确认镜像是否已删除。

设置 Docker 开机启动

systemctl enable docker

设置容器自动重启

方式一:在创建容器时设置

docker run -d --restart=always --name 设置容器名 使用的镜像
(上面命令  --name后面两个参数根据实际情况自行修改)
 
# Docker 容器的重启策略如下:
 --restart 具体参数值详细信息:
       no        // 默认策略,容器退出时不重启容器;
       on-failure    // 在容器非正常退出时(退出状态非0)才重新启动容器;
       on-failure:3    // 在容器非正常退出时重启容器,最多重启3次;
       always      // 无论退出状态是如何,都重启容器;
       unless-stopped  // 在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器。

镜像加速

创建或修改 /etc/docker/daemon.json 文件,添加镜像。

vi /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
  ]
}

镜像站:

  • Docker中国区官方镜像:"https://registry.docker-cn.com"
  • 网易:"http://hub-mirror.c.163.com"
  • ustc:"https://docker.mirrors.ustc.edu.cn"
  • 中国科技大学:"https://docker.mirrors.ustc.edu.cn"
  • DaoCloud:"http://f1361db2.m.daocloud.io"

一般我都是登录阿里云,使用自己的镜像加速网址:https://cr.console.aliyun.com/

docker-daemon

修改完毕后重启

sudo systemctl daemon-reload
sudo systemctl restart docker

重启完毕后查看docker镜像配置是否成功。

docker info

在打印出的信息里,Registry Mirrors 就是你配置的加镜像速网址。

Last Updated: 2/23/22, 5:59 PM
Contributors: maijinjie