CentOS 7 下 Docker 部署环境搭建实验报告
·
一、实验名称
CentOS 7 系统中 Docker 部署前环境配置与本地 / YUM 源搭建实验
二、实验目的
- 完成两台 CentOS 7 虚拟机(Server、Client)的主机名、网络、防火墙、内核转发等基础环境配置。
- 实现两台虚拟机hosts 解析与网络互通。
- 在 Server 节点配置腾讯 YUM 源、搭建 vsftpd 共享服务。
- 挂载 ISO 镜像、创建本地 YUM 仓库,完成 Server 本地源与 Client FTP 源配置。
- 为后续 Docker 安装与容器服务部署搭建稳定可靠的软件源环境。
三、实验环境
- 宿主机系统:Windows
- 虚拟机软件:VMware Workstation
- 虚拟机系统:CentOS 7
- 节点数量:2 台(Server、Client)
- 网络模式:NAT(VMnet8)
- 镜像文件:chinaskills_cloud_paas.iso、CentOS-7-x86_64-Minimal-xxxx.iso
- 关键服务:vsftpd、firewalld、selinux、createrepo
四、实验参数配置
| 节点 | 主机名 | 内存 | 硬盘 | 静态 IP | 网关 | DNS |
|---|---|---|---|---|---|---|
| 服务端 | server | 4G | 40G | 10.XX.3.137/24 | 10.XX.3.1 | 114.114.114.114 |
| 客户端 | client | 4G | 40G | 10.XX.3.138/24 | 10.XX.3.1 | 114.114.114.114 |
注:XX 为学号后两位,虚拟机网络需与宿主机 VMnet8 网段一致。
五、实验步骤
(一)虚拟机基础配置
- 修改主机名
- Server 节点:
hostnamectl set-hostname server
bash
- Client 节点:
hostnamectl set-hostname client
bash
- 配置静态网络(NAT 模式)
nmtui # 图形化配置IP、网关、DNS
systemctl restart network
- 关闭防火墙与 SELinux
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
# 临时关闭SELinux
setenforce 0
# 永久关闭SELinux
vi /etc/selinux/config
# 修改:SELINUX=disabled
两台节点均执行。
(二)开启内核转发
- 编辑配置文件:
vi /etc/sysctl.conf
添加内容:
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
- 生效配置:
sysctl -p
两台节点均执行。
(三)配置 /etc/hosts 主机解析
vi /etc/hosts
添加:
10.XX.3.137 server
10.XX.3.138 client
两台节点均配置,配置后立即生效。
(四)Server 节点更换腾讯 YUM 源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tencent.com/repo/centos7_base.repo
yum clean all && yum makecache
(五)Server 安装并配置 vsftpd
- 安装服务:
yum -y install vsftpd
- 修改配置:
vi /etc/vsftpd/vsftpd.conf
# 末尾添加:anon_root=/opt/
- 启动并开机自启:
systemctl start vsftpd
systemctl enable vsftpd
- 验证:
# Server本地验证
curl ftp://server
# Client远程验证
curl ftp://server
(六)挂载 PAAS 镜像并创建 YUM 元数据
- 挂载镜像:
mount /dev/cdrom /mnt
mkdir /opt/paas
cp -rvf /mnt/* /opt/paas
umount /mnt
- 安装 createrepo:
yum install -y createrepo
- 生成仓库元数据:
createrepo /opt/paas
# 验证
ls /opt/paas/repodata/
(七)挂载 CentOS 镜像
mount /dev/cdrom /mnt
mkdir /opt/centos
cp -rvf /mnt/* /opt/centos
umount /mnt
(八)Server 配置本地 YUM 源
- 备份原有 repo 文件:
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/* /etc/yum.repos.d/bak/
mv /etc/yum.repos.d/bak/CentOS-Base.repo /etc/yum.repos.d/
- 新建本地源:
vi /etc/yum.repos.d/docker.repo
内容:
[docker]
name=docker
baseurl=file:///opt/paas
gpgcheck=0
enabled=1
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
- 重建缓存:
yum clean all && yum makecache
(九)Client 配置 FTP YUM 源
- 备份原有 repo 文件:
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/* /etc/yum.repos.d/bak/
mv /etc/yum.repos.d/bak/CentOS-Base.repo /etc/yum.repos.d/
- 新建 FTP 源:
vi /etc/yum.repos.d/docker.repo
内容:
[docker]
name=docker
baseurl=ftp://server/paas
gpgcheck=0
enabled=1
[centos]
name=centos
baseurl=ftp://server/centos
gpgcheck=0
enabled=1
- 重建缓存:
yum clean all && yum makecache
六、实验结果
- 两台虚拟机主机名、IP、网关、DNS配置正确,网络互通。
- 防火墙与 SELinux 已关闭,内核转发正常生效。
- /etc/hosts 配置完成,可通过主机名互相访问。
- Server 节点 YUM 源更换成功,vsftpd 服务正常运行,FTP 共享可访问。
- PAAS 与 CentOS 镜像挂载完成,本地 YUM 仓库创建成功。
- Server 本地源、Client FTP 源配置完成,YUM 缓存构建成功。
- 整体环境满足后续 Docker 安装与容器化部署的基础要求。
七、实验问题与解决
- 问题:nmtui 配置网络后重启失败。解决:检查 NetworkManager 状态,确保网卡配置文件无误,重启 network 服务。
- 问题:vsftpd 无法匿名访问。解决:确认 anon_root 路径正确,关闭防火墙与 SELinux。
- 问题:createrepo 执行失败。解决:先安装依赖包,确保 /opt/paas 目录存在且文件完整。
- 问题:Client FTP 源无法加载。解决:检查 Server vsftpd 状态、防火墙、SELinux,确认路径与权限正确。
八、实验总结
本次实验完成了 CentOS 7 双节点虚拟机的系统初始化、网络配置、安全关闭、内核参数优化、主机解析、YUM 源替换、FTP 服务搭建、本地仓库创建等全部任务。通过本地源与 FTP 源的配置,实现了离线环境下软件安装与更新,为后续 Docker 引擎安装、镜像管理、容器运行及集群部署奠定了坚实基础。实验加深了对 Linux 系统配置、YUM 仓库原理、网络服务与虚拟化环境的理解。
更多推荐
所有评论(0)