编辑
2026-06-05
云计算实验报告
00

目录

实验二 Docker容器部署与基础操作实战
实验目的
实验内容
实验步骤
实验分析

实验二 Docker容器部署与基础操作实战

实验目的

(1)理解Docker容器技术的基本原理,掌握容器与虚拟机的区别; (2)掌握在阿里云ECS/Alibaba Cloud Linux环境中安装Docker引擎的完整流程; (3)掌握Docker镜像与容器的核心操作命令,能够完成镜像拉取、容器创建、启动停止等操作; (4)掌握Dockerfile的编写方法,能够基于基础镜像构建自定义应用镜像; (5)理解Docker容器网络与数据卷的基本概念,具备容器化应用部署的实践能力。

实验内容

本实验内容主要分为四个阶段:

  1. 引擎安装与配置:包括系统环境准备、依赖工具安装、Docker引擎部署、镜像加速器配置及用户权限管理。
  2. 基础操作实战:进行镜像的拉取、查看、删除及标签管理;容器的创建、运行、生命周期管理、日志查看及文件复制。
  3. 自定义镜像构建:编写Dockerfile构建包含自定义页面的Nginx镜像及Python Web应用镜像。
  4. 网络与存储编排:配置容器网络连通性,使用数据卷实现数据持久化,并利用Docker Compose部署WordPress多容器应用。

实验步骤

步骤1:环境准备与引擎安装。 首先登录系统,使用 sudo dnf update -y 更新软件包。安装必要依赖工具 yum-utilsdevice-mapper-persistent-datalvm2。接着添加阿里云Docker CE软件源,并执行 sudo dnf -y install docker-ce docker-ce-cli containerd.io 安装Docker引擎。安装完成后,运行 sudo systemctl start docker 启动服务并设置开机自启,最后通过 docker -v 命令验证版本信息。

步骤2:配置镜像加速器。 为了加快拉取速度,执行 sudo mkdir -p /etc/docker 创建目录,并通过 tee 命令将阿里云镜像地址写入 /etc/docker/daemon.json 文件。执行 sudo systemctl daemon-reloadsudo systemctl restart docker 重载配置并重启服务。使用 docker info | grep -A 5 "Registry Mirrors" 验证加速器配置是否生效。

步骤3:镜像与容器基础操作。 使用 docker pull nginx:latest 拉取官方镜像。执行 docker run -d --name web-nginx -p 8080:80 nginx:latest 后台运行容器,并将宿主机8080端口映射至容器80端口。通过 docker ps 查看运行状态,使用 curl http://localhost:8080 测试访问。利用 docker logs web-nginx 查看日志,docker exec -it web-nginx /bin/bash 进入容器,最后使用 docker stopdocker rm 清理容器。

步骤4:构建自定义镜像。 创建工作目录,编写Dockerfile,基于Nginx镜像并使用 RUN 指令修改首页内容。执行 docker build -t custom-nginx:v1 . 构建镜像。运行新镜像 docker run -d -p 8080:80 custom-nginx:v1,再次通过浏览器或curl访问,验证页面内容已修改为自定义信息。

步骤5:网络与数据卷管理。 执行 docker network create mynetwork 创建自定义网络,并运行两个容器加入该网络,使用 docker exec container1 ping container2 测试连通性。创建数据卷 docker volume create mydata,挂载至Nginx容器并写入测试数据。删除容器后重新创建并挂载相同数据卷,验证 docker exec new-web cat /usr/share/nginx/html/data.txt 输出持久化数据。

步骤6:Docker Compose应用编排。 编写 docker-compose.yml 文件定义WordPress和MySQL服务。执行 docker compose up -d 启动所有服务,通过 docker compose ps 检查服务状态,确认所有容器正常运行。最后使用 docker compose down 停止并清理服务,完成实验。

实验分析

实验结果 本次实验成功在Alibaba Cloud Linux 3环境下完成了Docker引擎的安装与配置,镜像加速器有效提升了拉取速度。通过命令行熟练掌握了镜像与容器的管理操作,Nginx服务端口映射访问正常。自定义构建的Nginx与Python镜像均成功运行,验证了Dockerfile的正确性。容器网络互通测试成功,数据卷挂载在容器重建后数据未丢失,WordPress应用编排部署顺利,各项功能验证均达到预期。

个人收获 通过本次实战,我深入理解了Docker容器技术与传统虚拟机的区别,掌握了容器化部署的核心流程。在编写Dockerfile过程中,学会了如何利用分层构建优化镜像体积。通过对网络和数据卷的配置,我对容器间的通信机制及数据持久化策略有了更直观的认识,同时也提升了使用Docker Compose进行多容器编排运维的能力,为后续学习Kubernetes打下了坚实基础。

本文作者:Linxiong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!