总体说明 在 CentOS 上,所谓“集成”通常指将 Docker 引擎作为系统服务运行,并通过 systemd 管理;按需配置 网络、存储、防火墙、用户权限、镜像加速与代理,再结合 Docker Compose 编排多容器应用。核心组件包括:docker-ce、docker-ce-cli、containerd.io,默认通过 Unix 套接字 /var/run/docker.sock 与 Docker 守护进程通信。
安装与系统服务集成
sudo yum update -ysudo yum remove -y docker* docker-ce* containerd.iosudo yum install -y yum-utils device-mapper-persistent-data lvm2sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposudo yum install -y docker-ce docker-ce-cli containerd.iosudo systemctl enable --now dockersudo docker run --rm hello-worldsudo usermod -aG docker $USER,随后重新登录会话生效。运行与网络集成
sudo docker run -d -p 8080:80 nginx:alpine,主机 8080 映射到容器 80。docker network create mynetdocker run -d --network=mynet --name=web nginx:alpinesudo firewall-cmd --permanent --zone=trusted --add-interface=docker0 && sudo firewall-cmd --reloadsudo firewall-cmd --permanent --zone=public --add-port=8080/tcp && sudo firewall-cmd --reloaddocker volume create myvol;挂载:docker run -d -v myvol:/data nginx:alpinedocker run -d -v /host/data:/container/data nginx:alpinedocker logs <容器名或ID>docker stats。安全与运维配置
"storage-driver": "overlay2""log-driver": "json-file", "log-opts": {"max-size":"100m"}"registry-mirrors": ["https://<YOUR_MIRROR_URL>"]sudo systemctl daemon-reload && sudo systemctl restart docker"hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375"] 并配合防火墙与 TLS 谨慎暴露;生产环境不建议直接开放 2375/2376。[Service] Environment="HTTP_PROXY=http://proxy:8080" "HTTPS_PROXY=http://proxy:8080" "NO_PROXY=localhost,127.0.0.1"sudo systemctl daemon-reload && sudo systemctl restart docker"userns-remap": "default",降低容器以 root 权限对宿主机的影响。编排与多容器应用
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-composedocker-compose --versiondocker-compose up -ddocker-compose ps、docker-compose logs -f、docker-compose down