Docker安装配置

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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值