本次容器云课程的学习让我系统掌握了容器化技术的核心原理与实操流程。我们基于 OpenStack 云计算平台搭建基础云主机环境完成了 Docker 引擎安装、私有镜像仓库部署、镜像全生命周期管理以及 Web 应用的容器化部署验证。整个过程从底层基础设施到上层应用部署形成了完整闭环不仅加深了我对容器云 “轻量、可移植、高弹性” 核心优势的理解也积累了大量解决实际问题的经验。本文将完整记录本次实验的所有步骤、遇到的问题及解决方案作为本次课程的一课一得总结。一、实验环境准备1.1 OpenStack 云主机创建实验的基础环境基于国基北盛云计算基础架构服务平台搭建。我们首先在平台的 “资源管理 - 云主机” 模块创建了一台云主机云主机名称lq云主机类型test分配浮动 IP192.168.16.106可用域nova云主机创建完成后我们在本地终端执行ping 192.168.16.106命令验证网络连通性返回结果显示延迟 1msTTL128说明云主机网络正常可以进行后续操作。1.2 云主机网络配置通过 SSH 连接到云主机后执行ip a命令查看网卡配置信息确认 ens33 接口已正确配置 IP 地址192.168.16.106/24广播地址为192.168.16.255网络状态为 UP确保后续 Docker 服务和镜像仓库能够正常对外提供服务。二、Docker 基础环境安装与配置2.1 安装 Docker CE 引擎我们采用 yum 方式安装 Docker 社区版具体步骤如下bash运行# 1. 更新系统软件包 yum update -y # 2. 安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2 # 3. 添加Docker官方yum源 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 4. 安装Docker CE yum install -y docker-ce docker-ce-cli containerd.io # 5. 启动Docker并设置开机自启 systemctl start docker systemctl enable docker # 6. 验证安装是否成功 docker version执行docker version命令后若能同时显示 Client 和 Server 的版本信息说明 Docker 引擎安装成功。2.2 配置 Docker 镜像加速由于国内访问 Docker Hub 速度较慢我们配置了阿里云镜像加速器来提升镜像拉取速度bash运行# 创建Docker配置目录 mkdir -p /etc/docker # 写入加速器配置 cat /etc/docker/daemon.json EOF { registry-mirrors: [https://你的阿里云加速器地址.mirror.aliyuncs.com] } EOF # 重启Docker使配置生效 systemctl daemon-reload systemctl restart docker三、Docker 私有镜像仓库搭建在企业生产环境中通常会搭建私有镜像仓库来管理内部镜像保证镜像安全和传输效率。本次实验我们使用官方的 registry 镜像搭建私有仓库。3.1 拉取 registry 镜像bash运行docker pull registry:23.2 运行私有仓库容器我们将容器的 5000 端口映射到宿主机的 5000 端口并将容器内的镜像存储目录挂载到宿主机的/opt/registry目录实现镜像数据的持久化bash运行docker run -d \ -p 5000:5000 \ --restartalways \ --name registry \ -v /opt/registry:/var/lib/registry \ registry:23.3 配置 Docker 信任私有仓库由于我们的私有仓库使用 HTTP 协议而非 HTTPS需要在 Docker 配置中添加信任否则会出现 “http: server gave HTTP response to HTTPS client” 错误bash运行# 修改daemon.json文件添加insecure-registries配置 cat /etc/docker/daemon.json EOF { registry-mirrors: [https://你的阿里云加速器地址.mirror.aliyuncs.com], insecure-registries: [10.6.3.137:5000] } EOF # 重启Docker使配置生效 systemctl daemon-reload systemctl restart docker四、镜像的打包、标记、推送与拉取4.1 准备基础镜像我们以 Redis 镜像为例演示镜像的全生命周期管理。首先拉取官方 Redis 镜像bash运行docker pull redis:latest4.2 标记镜像到私有仓库使用docker tag命令将本地镜像标记为私有仓库格式镜像名称格式为仓库地址/镜像名:标签bash运行docker tag redis:latest 10.6.3.137:5000/htx-redis:v1.14.3 推送镜像到私有仓库bash运行docker push 10.6.3.137:5000/htx-redis:v1.14.4 验证私有仓库镜像使用 curl 命令查询私有仓库中的镜像列表确认镜像推送成功bash运行curl http://10.6.3.137:5000/v2/_catalog返回结果如下说明 htx-redis 镜像已成功推送到私有仓库json{repositories:[centos,httpd,registry,htx-redis]}4.5 从私有仓库拉取镜像为了验证拉取功能我们先删除本地的 htx-redis 镜像再从私有仓库拉取bash运行# 删除本地镜像 docker rmi 10.6.3.137:5000/htx-redis:v1.1 # 从私有仓库拉取镜像 docker pull 10.6.3.137:5000/htx-redis:v1.1 # 验证拉取成功 docker images五、Web 应用部署与验证最后我们部署一个简单的 HTTP Web 应用验证容器云的应用部署能力。5.1 拉取 httpd 基础镜像bash运行docker pull httpd:latest5.2 运行 httpd 容器将容器的 80 端口映射到宿主机的 8080 端口命名为 my-httpdbash运行docker run -d -p 8080:80 --name my-httpd httpd:latest5.3 验证应用访问在本地浏览器中访问http://10.6.3.137:8080页面显示 “It works!”说明 HTTPD 应用已成功部署并可以正常访问。六、学习心得与总结通过本次容器云部署与应用的完整实验我收获颇丰技术能力提升熟练掌握了 OpenStack 云主机的创建、网络配置和远程连接方法能够独立完成 Docker 引擎的安装、配置和日常管理掌握了私有镜像仓库的搭建流程和镜像的打包、标记、推送、拉取全生命周期操作。问题解决能力实验中遇到了 “HTTP/HTTPS 协议不匹配”、“镜像拉取速度慢”、“端口冲突” 等问题通过查阅官方文档和社区资料逐一解决了这些问题提升了自己排查和解决问题的能力。核心概念理解深刻理解了容器 “一次构建到处运行” 的特性认识到容器云在提高资源利用率、加快应用部署速度、简化运维流程等方面的巨大优势。容器云技术是当前云计算领域的核心技术之一本次实验只是入门。未来我将继续学习 Kubernetes 容器编排技术深入研究容器的网络、存储和安全机制不断提升自己在云原生领域的技术能力为今后从事相关工作打下坚实的基础。