基于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

相关推荐
AL流云。3 小时前
学习Docker前提:多环境安装Docker
学习·docker·eureka·1024程序员节
路漫漫其修远兮sjw3 小时前
常用docker命令速查表
运维·docker·容器·模型部署
cliproxydaili3 小时前
Cliproxy与Adspower指纹浏览器:跨境业务安全与效率的双重引擎
运维·服务器·安全
喜欢你,还有大家4 小时前
Prometheus监控部署——pushgateway&&自动推送
运维·prometheus
冲上云霄的Jayden4 小时前
Ubuntu 22.04 中查看指定进程 ID(PID)状态的五种方法
运维·ubuntu·ps·top·pid·htop·proc
搬砖的小码农_Sky4 小时前
如何在Linux(Ubuntu)操作系统上查看文件的MD5,SHA256等校验码
linux·运维·ubuntu
Linux运维技术栈4 小时前
Jenkins从节点配置全攻略:从搭建到任务调度,参数详解与实战指南
运维·jenkins
java_logo12 小时前
Docker 部署 WordPress 全流程
运维·docker·容器·word·php·1024程序员节
小小的木头人13 小时前
Ubuntu 自动挂载移动硬盘
运维