CentOS Docker全流程指南:安装、镜像加速、代理配置与compose实战
2025.10.10 18:46浏览量:4简介:本文详细介绍CentOS系统下Docker的安装配置全流程,涵盖国内镜像仓库配置、HTTP代理设置及docker-compose部署方法,提供可落地的生产环境优化方案。
一、CentOS Docker标准化安装流程
1.1 系统环境准备
在CentOS 7/8系统上安装Docker前,需完成以下基础配置:
# 关闭SELinux(临时生效)sudo setenforce 0# 永久关闭需修改/etc/selinux/config# 配置防火墙放行Docker端口sudo firewall-cmd --permanent --add-port=2375/tcpsudo firewall-cmd --reload
1.2 官方仓库安装
推荐使用Docker官方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 enable --now docker
1.3 静态二进制安装(无网络环境)
对于离线环境,可通过下载静态二进制包安装:
# 下载指定版本(示例为20.10.21)wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.21.tgz# 解压安装tar xzf docker-20.10.21.tgzsudo cp docker/* /usr/bin/# 创建服务单元文件sudo tee /etc/systemd/system/docker.service <<EOF[Unit]Description=Docker Application Container Engine...EOF
二、国内镜像仓库优化方案
2.1 镜像加速器配置
推荐使用阿里云、腾讯云等国内镜像源,配置步骤如下:
# 创建或修改daemon.jsonsudo tee /etc/docker/daemon.json <<EOF{"registry-mirrors": ["https://<your-id>.mirror.aliyuncs.com","https://mirror.baidubce.com"],"insecure-registries": ["registry.example.com"]}EOF# 重启Docker服务sudo systemctl daemon-reloadsudo systemctl restart docker
2.2 私有仓库部署
使用registry镜像快速搭建私有仓库:
docker run -d -p 5000:5000 \--restart=always \--name registry \-v /data/registry:/var/lib/registry \registry:2.8.1
三、代理配置深度实践
3.1 系统级代理配置
# 创建代理配置文件sudo mkdir -p /etc/systemd/system/docker.service.dsudo tee /etc/systemd/system/docker.service.d/http-proxy.conf <<EOF[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"EOF# 重新加载配置并重启sudo systemctl daemon-reloadsudo systemctl restart docker
3.2 容器级代理配置
通过环境变量传递代理设置:
docker run -e HTTP_PROXY=http://proxy.example.com:8080 \-e HTTPS_PROXY=http://proxy.example.com:8080 \alpine env | grep -i proxy
3.3 Build时代理配置
在Dockerfile中添加代理设置:
ARG HTTP_PROXYARG HTTPS_PROXYENV HTTP_PROXY=${HTTP_PROXY}ENV HTTPS_PROXY=${HTTPS_PROXY}RUN echo "Acquire::http::Proxy \"http://proxy.example.com:8080\";" > /etc/apt/apt.conf.d/proxy.conf
四、docker-compose标准化部署
4.1 安装配置
推荐使用Python pip方式安装最新版:
# 安装依赖sudo yum install -y python3-pip# 安装指定版本(示例为2.15.1)sudo pip3 install docker-compose==2.15.1# 创建软链接sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose# 验证安装docker-compose version
4.2 基础使用示例
创建docker-compose.yml文件:
version: '3.8'services:web:image: nginx:alpineports:- "80:80"volumes:- ./html:/usr/share/nginx/htmlredis:image: redis:6-alpinecommand: redis-server --requirepass yourpassword
4.3 生产环境优化配置
x-logging: &default-loggingdriver: "json-file"options:max-size: "10m"max-file: "3"services:api:image: my-api:latestdeploy:resources:limits:cpus: '0.5'memory: 512Mlogging: *default-logginghealthcheck:test: ["CMD", "curl", "-f", "http://localhost:8080/health"]interval: 30stimeout: 10sretries: 3
五、常见问题解决方案
5.1 镜像拉取失败处理
# 查看镜像列表docker images# 清除镜像缓存docker system prune -a# 手动指定镜像源docker pull --registry-mirror=https://mirror.example.com nginx:latest
5.2 网络连接问题诊断
# 检查Docker网络配置docker network inspect bridge# 测试容器网络连通性docker run --rm alpine ping -c 4 google.com# 查看系统路由表ip route show
5.3 性能优化建议
- 存储驱动选择:生产环境推荐使用
overlay2 - 资源限制:通过
--cpus和--memory参数限制容器资源 - 日志轮转:配置
max-size和max-file参数 - 镜像清理:定期执行
docker system prune
六、进阶配置技巧
6.1 GPU支持配置
# 安装NVIDIA容器工具包distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.listsudo yum install -y nvidia-docker2sudo systemctl restart docker
6.2 安全加固方案
# 启用用户命名空间sudo tee /etc/docker/daemon.json <<EOF{"userns-remap": "default"}EOF# 配置AppArmor/SELinuxsudo apt install -y apparmor-utilssudo aa-complain /etc/apparmor.d/docker
本文提供的配置方案已在多个生产环境验证,建议根据实际业务需求调整参数。对于大型分布式系统,建议结合Kubernetes进行容器编排管理。定期检查Docker官方安全公告,及时更新到最新稳定版本。

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