CentOS环境下Docker生态全流程配置指南
2025.10.10 18:49浏览量:3简介:本文详细介绍CentOS系统下Docker的安装、国内镜像源配置、代理设置及docker-compose部署方法,提供完整的操作流程和常见问题解决方案。
CentOS Docker安装指南
一、CentOS系统下Docker安装
1.1 系统要求与前置检查
Docker官方推荐使用CentOS 7/8系列版本,建议系统内存不低于2GB。安装前需确认:
- 系统内核版本≥3.10(
uname -r查看) - 关闭SELinux(临时:
setenforce 0;永久:修改/etc/selinux/config) - 卸载旧版本Docker(
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine)
1.2 安装步骤
方法一:使用yum仓库安装(推荐)
# 安装依赖包sudo yum install -y yum-utils device-mapper-persistent-data lvm2# 添加Docker官方仓库sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 安装Docker CEsudo yum install -y docker-ce docker-ce-cli containerd.io# 启动服务sudo systemctl start dockersudo systemctl enable docker
方法二:二进制包安装(适用于离线环境)
从Docker官方仓库下载对应版本的二进制包,解压后将docker和dockerd文件复制到/usr/local/bin/目录,创建systemd服务单元文件。
1.3 验证安装
sudo docker run hello-world
出现”Hello from Docker!”字样表示安装成功。
二、Docker国内镜像仓库配置
2.1 镜像加速器原理
国内镜像仓库通过同步Docker Hub镜像,提供更快的下载速度。常见加速器包括:
- 阿里云容器镜像服务(需账号)
- 腾讯云Docker镜像仓库
- 网易云镜像站
- 中科大镜像源
2.2 配置方法
2.2.1 修改daemon.json
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://<your-mirror-url>.mirror.aliyuncs.com","https://mirror.baidubce.com"],"insecure-registries": []}EOF
2.2.2 常用镜像源配置示例
- 阿里云(需替换
): "registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com"]
- 腾讯云:
"registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
2.2.3 重启生效
sudo systemctl daemon-reloadsudo systemctl restart docker
2.3 验证镜像加速
docker info | grep "Registry Mirrors" -A 5
应显示配置的镜像地址。
三、Docker代理配置
3.1 适用场景
- 企业内网环境
- 需要通过HTTP/HTTPS代理访问外网
- 镜像拉取需要认证
3.2 配置方法
3.2.1 系统级代理(影响所有容器)
修改/etc/systemd/system/docker.service.d/http-proxy.conf:
[Service]Environment="HTTP_PROXY=http://proxy.example.com:8080"Environment="HTTPS_PROXY=http://proxy.example.com:8080"Environment="NO_PROXY=localhost,127.0.0.1,.example.com"
3.2.2 容器级代理(推荐)
通过--env参数传递代理变量:
docker run --env HTTP_PROXY=http://proxy.example.com:8080 \--env HTTPS_PROXY=http://proxy.example.com:8080 \alpine env
3.2.3 认证代理配置
[Service]Environment="HTTP_PROXY=http://username:password@proxy.example.com:8080"
3.3 验证代理
docker run --rm alpine sh -c 'apk add --no-cache curl && curl -v ifconfig.me'
四、docker-compose安装与使用
4.1 安装方法
4.1.1 二进制包安装(推荐)
# 下载最新版本(替换URL中的版本号)sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 添加执行权限sudo chmod +x /usr/local/bin/docker-compose# 验证安装docker-compose version
4.1.2 pip安装(需Python环境)
sudo pip install docker-compose
4.2 基础使用示例
创建docker-compose.yml文件:
version: '3'services:web:image: nginx:latestports:- "80:80"volumes:- ./html:/usr/share/nginx/htmldb:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: example
常用命令:
# 启动服务docker-compose up -d# 查看状态docker-compose ps# 停止服务docker-compose down
4.3 高级配置技巧
- 使用
.env文件管理环境变量 - 通过
build指令构建自定义镜像 - 使用
depends_on控制服务启动顺序 - 配置健康检查(
healthcheck指令)
五、常见问题解决方案
5.1 镜像拉取失败
- 检查镜像名是否正确
- 验证镜像加速器配置
- 检查网络连接和代理设置
- 尝试手动指定完整镜像路径:
docker pull registry.cn-hangzhou.aliyuncs.com/library/nginx:latest
5.2 容器无法访问外网
- 检查主机网络配置
- 验证容器内
/etc/resolv.conf文件 - 尝试使用
--network host模式运行
5.3 docker-compose版本不兼容
- 确认
version字段与安装版本匹配 - 参考官方版本说明
六、最佳实践建议
镜像管理:
- 使用私有仓库存储关键镜像
- 定期清理无用镜像(
docker system prune) - 为镜像打标签(
docker tag)
安全配置:
- 限制root用户操作
- 使用非root用户运行容器
- 配置SELinux或AppArmor策略
性能优化:
- 调整存储驱动(overlay2推荐)
- 配置适当的资源限制
- 使用cgroups进行资源隔离
日志管理:
- 配置日志驱动和大小限制
- 使用
docker logs命令排查问题 - 考虑集中式日志收集方案
通过以上配置,开发者可以在CentOS环境下构建完整的Docker生态体系,显著提升容器化应用的部署效率和管理能力。建议根据实际业务需求,灵活组合使用镜像加速、代理配置和编排工具,构建适合企业环境的容器化解决方案。

发表评论
登录后可评论,请前往 登录 或 注册