基于VMware和Cent OS的Docker Engine安装与配置

1.实例实验环境:

镜像:CentOS-Stream-8

2.初始化配置

#查看当前的网络连接信息

root@localhost \~# nmcli connection show

#修改网络连接配置(如有警告或报错见附录)

root@localhost \~# nmcli connection modify ens160 \

> ipv4.addresses 192.168.198.155/24 \

> ipv4.gateway 192.168.198.2 \

> ipv4.dns "192.168.198.2,114.114.114.114" \

> ipv4.method manual \

> connection.autoconnect yes

#连通性测试(以谷歌的DNS为例)

root@localhost \~# ping 8.8.8.8

3.更新yum包

#因为CentOS Stream 8 已于 2024 年 5 月停止维护,官方仓库 mirrorlist.centos.org 已失效,需替换为第三方归档仓库(如阿里云、腾讯云的 CentOS 8 归档源)。

#备份并删除原仓库配置

mkdir -p /etc/yum.repos.d/backup

mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/

#下载第三方仓库配置(以阿里云为例)

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

#替换仓库中的版本标识(这里用的8版本,原仓库配置针对的是 CentOS 8.5)

sed -i 's/$releasever/8/g' /etc/yum.repos.d/CentOS-Base.repo

#清除缓存并且生成新的缓存

yum clean all yum makecache # 生成新的仓库缓存

#更新yum包

yum update

4.安装docker

#设置docker仓库

yum-config-manager --add-repo \

http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#安装Docker Engine软件包

#为了避免冲突,先卸载系统默认的容器引擎Podman,具体命令如下所示。

yum erase podman buildah

#执行命令安装Docker Engine,具体命令如下所示。

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

#验证

docker --version

5.配置Docker中央仓库的国内镜像源

#创建 Docker 配置目录

root@docker_dev \~# mkdir -p /etc/docker

#配置 Docker 镜像源

root@docker_dev \~# vim /etc/docker/daemon.json

{

"registry-mirrors": "https://docker.unsee.tech","https://mirror.ccs.tencentyun.com","https://[docker.m.daocloud.io](https://link.zhihu.com/?target=https://docker.m.daocloud.io "docker.m.daocloud.io")"

}

#重启守护进程并重启 Docker

root@docker_dev \~# systemctl daemon-reload && systemctl restart docker

6.测试(docker部署MySQL)

root@docker_dev \~# docker pull mysql:5.6

root@docker_dev \~# mkdir ~/mysql

root@docker_dev \~# cd ~/mysql

root@docker_dev mysql# docker run -id \

> -p 3308:3306 \

> --name=c_mysql \

> -v $PWD/conf:/etc/mysql/conf.d \

> -v $PWD/logs:/logs \

> -v $PWD/data:/var/lib/mysql \

> -e MYSQL_ROOT_PASSWORD=123456 \

> mysql:5.6 /bin/bash

root@docker_dev mysql# docker images;

REPOSITORY TAG IMAGE ID CREATED SIZE

mysql 5.6 dd3b2a5dcb48 3 years ago 303MB

root@docker_dev mysql# docker ps -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

391cf3047d19 mysql:5.6 "docker-entrypoint.s..." 27 seconds ago Up 26 seconds 0.0.0.0:3308->3306/tcp, :::3308->3306/tcp c_mysql

附件:常见报错处理

#如果系统提示 【存在其他 1 条带有名称 "ens160" 的连接】可以先删除原本网卡

nmcli connection delete uuid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

#或者指定网卡的uuid进行修改

nmcli connection modify e87427a5-3883-41a3-8042-8cb4a3e07128 \

ipv4.addresses 192.168.198.155/24 \

ipv4.gateway 192.168.198.2 \

ipv4.dns "192.168.198.2,114.114.114.114" \

ipv4.method manual \

connection.autoconnect yes

相关推荐
万联WANFLOW19 分钟前
异地组网速度忽快忽慢到底怎么回事?直连与中继的判断方法和处理步骤
运维·网络·网络协议·p2p
SDWAN_Cheap27 分钟前
物理服务器跟云服务器有什么区别,使用于什么场景
运维·服务器
螺蛳粉 螺蛳粉2 小时前
第 02 篇:镜像分层与 containerd 2.x 实战:SystemdCgroup 与 pause 镜像配置踩坑(底座认知 02)
docker·云原生·容器·kubernetes·etcd·containerd·kube-apiserver
福建佰胜张工2 小时前
深度解析 Allen-Bradley 150-B135NBDA 智能电机控制器:选型、参数与工业应用
运维·数据库·单片机·嵌入式硬件·安全·自动化
wefg12 小时前
【Docker】镜像相关指令
运维·docker·容器
feng_you_ying_li3 小时前
linux之网络层
linux·运维·网络
未来之窗软件服务3 小时前
Linux 运维日志删除的多种方式—东方仙盟
linux·运维·服务器·仙盟创梦ide·东方仙盟
卓豪终端管理3 小时前
IT 运维视角下的终端数据安全:能力框架与落地清单
运维
小雉系统3 小时前
BcoreOS实战:用一个升级包,让Rocky Linux跑进Debian服务器
linux·运维·服务器·debian
甜到心里的蛋糕3 小时前
从 QQ 机器人到 B 站 AI 运营:一套可复现的视频流水线踩坑实录
运维·人工智能·python·自动化·视频制作