Docker安装配置

导读:本篇文章讲解 Docker安装配置,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1.1 检查是否安装docker

rpm -qa | grep docker*

1.2 设置仓库

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

在设置仓库之前,需要安装docker所需的软件包,yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。

yum install -y yum-utils device-mapper-persistent-data lvm2

然后就可以设置仓库了,由于官方源地址比较慢,可以选择设置国内的源地址,选择使用阿里云

// 设置官方源地址
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

// 阿里云源地址
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

// 清华大学源地址
yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

1.3 安装Docker

安装Docker,不是只有一个安装包,加上Docker的客户端,一共需要安装三个软件包

可以通过下面的命令,直接安装最新版本的软件包

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

如果提示是否接受 GPG 密钥,选择是。

如果需要安装特定版本的Docker,可以通过下面的命令列出存储库中的可用版本

[root@lizhi ~]# yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64                3:20.10.9-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.8-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.7-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.6-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.5-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.4-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.3-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.2-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.1-3.el8                 docker-ce-stable
docker-ce.x86_64                3:20.10.12-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.11-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.10-3.el8                docker-ce-stable
docker-ce.x86_64                3:20.10.0-3.el8                 docker-ce-stable
docker-ce.x86_64                3:19.03.15-3.el8                docker-ce-stable
docker-ce.x86_64                3:19.03.14-3.el8                docker-ce-stable
docker-ce.x86_64                3:19.03.13-3.el8                docker-ce-stable
Docker CE Stable - x86_64                        60 kB/s |  19 kB     00:00    
Available Packages

然后指定版本进行安装

yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。

1.4 启动和关闭Docker

启动Docker

systemctl start docker

关闭Docker

systemctl stop docker.socket 

启动测试镜像hello-world,刚启动的时候,测试还没有镜像,会去下载

docker run hello-world

1.5 设置Docker开启启动

可以通过下面的命令查看已启动的服务

[root@lizhi ~]# systemctl list-units --type=service
UNIT                               LOAD   ACTIVE SUB     DESCRIPTION                                                                  
aegis.service                      loaded active running Aegis Service                                                                
aliyun.service                     loaded active running Aliyun Assist
mysqld.service                     loaded active running MySQL Server             
docker.service                     loaded active running Docker Application Container Engine  

然后再通过下面的命令查看设置开启启动的服务

[root@lizhi ~]# systemctl list-unit-files | grep enable
aegis.service                              enabled        
aliyun.service                             enabled     
mysqld.service                             enabled

设置Docker开机启动

systemctl enable docker.service

关闭Docker开机启动

systemctl disable docker.service

1.6 卸载Docker

卸载软件包

yum remove docker-ce docker-ce-cli containerd.io

删除镜像、容器、配置文件等内容(运行环境)

// docker的默认工作路径
rm -rf /var/lib/docker

1.7 设置Docker容器自动启动

前面只设置了Docker服务的开机启动,但Docker里面的容器如果没有设置自动启动,Docker启动时容器也不会重启

Docker容器自动启动的选项有以下几种:

no             不自动重启容器. (默认value)
on-failure     容器发生error而退出(容器退出状态不为0)重启容器
unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器
always         在容器已经stop掉或Docker stoped/restarted的时候才重启容器

在容器启动时加上--restart=always,以下面MySQL为例,启动MySQL服务并设置为跟随Docker一起启动

docker run -p 3306:3306 --name mysql --restart=always -v /application/mysql/conf:/etc/mysql/conf.d -v /application/mysql/logs:/logs -v /application/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.28
-p 3306:3306:将主机的3306端口映射到docker容器的3306端口。
--name mysql:运行服务名字
-v /application/mysql/conf:/etc/mysql/conf.d :将主机/application/mysql录下的conf/my.cnf 挂载到容器的 /etc/mysql/conf.d
-v /application/mysql/logs:/logs:将主机/application/mysql目录下的 logs 目录挂载到容器的 /logs。
-v /application/mysql/data:/var/lib/mysql :将主机/application/mysql目录下的data目录挂载到容器的 /var/lib/mysql 
-e MYSQL_ROOT_PASSWORD=root123:初始化 root 用户的密码。
-d mysql:8.0.28 : 后台程序运行mysql:8.0.28

如果容器已经启动,则使用update进行更新

docker update --restart=always 容器id或name

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/112119.html

(0)
Java光头强的头像Java光头强

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!