企业级 Docker 全流程部署实战:从环境搭建到 Compose 编排一站式落地
·
在云计算、微服务与容器化普及的今天,Docker 已成为运维、开发、测试岗位必备的核心技能。本文基于 CentOS 7 双节点架构,从零开始完成标准化环境配置、Docker 安装运维、私有仓库搭建、自定义镜像构建、Docker Compose 服务编排五大核心任务,全程可复现、可直接用于实训、考试与企业小型项目部署,兼顾基础操作与工程化规范。
一、实验架构与环境标准化配置
本次实验采用 Server(服务端)+ Client(客户端) 双虚拟机架构,模拟企业真实生产环境的分布式部署模式,所有操作严格遵循 Linux 运维规范。
1. 基础环境信息
| 节点 | 主机名 | 系统版本 | 内存 | 静态 IP | 核心用途 |
|---|---|---|---|---|---|
| 服务端 | server | CentOS 7 | 4GB | 10.81.3.137 | Docker 仓库、镜像构建、服务发布 |
| 客户端 | client | CentOS 7 | 4GB | 10.81.3.138 | 服务拉取、Compose 编排部署 |
2. 主机名与网络基础配置
# 1. 修改主机名(两台节点分别执行)
# 服务端
hostnamectl set-hostname server && bash
# 客户端
hostnamectl set-hostname client && bash
# 2. 永久关闭防火墙与SELinux(生产环境前置规范)
systemctl stop firewalld && systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# 3. 开启内核转发(Docker 网络必需)
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
# 4. 配置主机名解析(双节点互通)
cat >> /etc/hosts << EOF
10.81.3.137 server
10.81.3.138 client
EOF
3. YUM 仓库与 FTP 服务配置
为保证离线环境可用,搭建本地 FTP 仓库,提供镜像与依赖包:
- 安装
vsftpd并设置开机自启; - 挂载系统 ISO 与实训镜像到
/opt目录; - 生成本地 YUM 元数据,确保所有节点可正常安装软件。
二、Docker CE 安装与运维命令实战
Docker Community Edition(社区版)是企业最常用的免费版本,支持镜像管理、容器生命周期控制等核心功能。
1. 一键安装与启动
# 安装 Docker 社区版
yum install -y docker-ce
# 启动并设置开机自启
systemctl start docker && systemctl enable docker
# 验证安装成功
docker version && docker info
2. 核心运维命令(企业常用)
# 本地加载镜像(离线部署必备)
docker load -i /opt/paas/images/httpd-2.2.32.tar
# 后台运行容器,端口映射
docker run -d --restart=unless-stopped -p 8080:80 [镜像ID]
# 查看运行中容器
docker ps
# 进入容器内部操作
docker exec -it [容器ID] bash
# 停止/删除容器
docker stop [容器ID] && docker rm [容器ID]

三、Docker 本地私有仓库(Registry)搭建
企业内部严禁直接使用公共仓库传输镜像,私有仓库是容器化落地的必备组件。
1. 部署私有仓库
# 加载仓库镜像
docker load -i /opt/images/registry.tar
# 启动仓库容器(数据持久化+端口映射)
docker run -d \
-v /opt/registry:/var/lib/registry \
-p 5000:5000 \
--restart=always \
--name registry \
registry:latest
2. 解决 HTTPS 认证问题
# 配置 HTTP 信任仓库(双节点都需配置)
cat > /etc/docker/daemon.json << EOF
{
"insecure-registries": ["server:5000"]
}
EOF
# 重启 Docker 生效
systemctl daemon-reload && systemctl restart docker
3. 镜像推送与拉取验证
# 服务端:镜像打标 + 推送私有仓库
docker tag httpd:2.2.32 server:5000/httpd:2.2.32
docker push server:5000/httpd:2.2.32
# 客户端:拉取镜像验证
docker pull server:5000/httpd:2.2.32
docker images

四、Dockerfile 构建企业级 Redis 自定义镜像
相比于直接使用公共镜像,自定义构建镜像可统一环境、内置配置、符合企业安全规范。
1. 创建工作目录
mkdir ~/redis && cd ~/redis
2. 编写标准化 Dockerfile
# 基础镜像(来自本地私有仓库,安全合规)
FROM server:5000/centos
# 镜像维护者信息
MAINTAINER cloud-ops
# 配置本地YUM源,安装Redis
RUN rm -rf /etc/yum.repos.d/*
COPY local.repo /etc/yum.repos.d/
RUN yum install redis -y
# 修改Redis配置,允许外部访问
RUN sed -i 's/bind 127.0.0.1/bind 0.0.0.0/' /etc/redis.conf
RUN sed -i 's/protected-mode yes/protected-mode no/' /etc/redis.conf
# 暴露服务端口
EXPOSE 6379
# 容器启动命令
CMD ["redis-server", "/etc/redis.conf"]
3. 构建、推送镜像
# 构建镜像
docker build -t yrm-redis:v1.1 .
# 打标并推送私有仓库
docker tag yrm-redis:v1.1 server:5000/yrm-redis:v1.1
docker push server:5000/yrm-redis:v1.1

五、Docker Compose 一键编排部署 Redis
Docker Compose 是多容器编排工具,可通过 YAML 文件一键启动、停止、管理服务,大幅提升运维效率。
1. 安装 Docker Compose
# 下载工具包
wget ftp://server/paas/docker-compose/v1.25.5-docker-compose-Linux-x86_64
# 移动到系统目录并授权
mv v1.25.5-* /usr/bin/docker-compose
chmod +x /usr/bin/docker-compose
# 验证安装
docker-compose -v
2. 编写编排文件
version: '2.0'
services:
redis:
container_name: yrm-redis
image: server:5000/yrm-redis:v1.1
ports:
- "6379:6379"
restart: always
network_mode: bridge
3. 一键启动与功能验证
# 后台启动服务
docker-compose up -d
# 查看服务状态
docker ps | grep redis
# 进入Redis客户端测试
docker exec -it yrm-redis redis-cli
set test-key hello-docker
get test-key

![]()

六、实验总结与企业价值
1. 核心技能掌握
- 环境标准化:双节点网络、防火墙、内核参数规范化配置;
- Docker 基础:安装、镜像 / 容器生命周期管理、离线部署;
- 私有仓库:企业内部镜像安全存储与分发;
- 镜像构建:Dockerfile 自定义业务镜像;
- 服务编排:Docker Compose 一键部署微服务。
2. 常见问题排查
- 私有仓库推送失败:检查
daemon.json配置并重启 Docker; - 容器无法外部访问:确认端口映射、防火墙、SELinux 状态;
- 镜像构建失败:检查 YUM 源配置与文件路径。
3. 工程化价值
本套流程完全贴合企业实训、技能竞赛、生产环境标准,从基础环境到服务落地形成闭环,不仅掌握命令操作,更理解容器化背后的设计思想,是从运维新手到容器工程师的必备实战案例。
更多推荐

所有评论(0)