在CentOS上管理Docker容器前,需先安装Docker Engine。以下是基础安装步骤:
sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-enginesudo 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 install -y docker-ce docker-ce-cli containerd.iosudo systemctl start docker && sudo systemctl enable dockersudo docker run hello-world(运行测试容器,确认Docker正常工作)。docker ps(显示容器ID、名称、状态、端口映射等信息);docker ps -a(添加-a参数显示所有容器)。docker run -d --name <容器名> -p <主机端口>:<容器端口> -v <主机路径>:<容器路径> <镜像名>(-d后台运行,-p端口映射,-v数据卷挂载);docker start <容器名或ID>。docker stop <容器名或ID>(发送SIGTERM信号,等待容器自行关闭,默认超时10秒);docker kill <容器名或ID>(发送SIGKILL信号,立即终止容器,可能导致数据丢失);docker stop $(docker ps -q)(-q仅显示容器ID)。docker rm <容器名或ID>(仅能删除停止状态的容器);docker rm -f <容器名或ID>(强制终止并删除,慎用);docker container prune(交互式确认删除)或docker rm $(docker ps -aq)(直接删除所有停止容器)。docker exec -it <容器名或ID> /bin/bash(-it分配伪终端,/bin/bash启动bash shell,适用于调试);docker exec <容器名或ID> <命令>(如docker exec my_nginx ls /usr/share/nginx/html查看Nginx默认页面目录)。docker cp <主机路径> <容器名或ID>:<容器路径>(如docker cp ./app.py my_container:/app);docker cp <容器名或ID>:<容器路径> <主机路径>(如docker cp my_container:/app/logs.txt ./)。docker logs <容器名或ID>(实时查看日志,-f跟随输出;--tail 100显示最后100行);docker stats(实时显示容器CPU、内存、网络IO等使用情况,--format自定义输出格式)。docker update --restart always <容器名或ID>(容器退出后自动重启,可选on-failure(失败时重启)、unless-stopped(除非手动停止));docker stop并docker rm原容器,再用docker run重新创建时指定新的-p参数。对于复杂应用(如Web+数据库),可使用docker-compose管理多容器:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose;docker-compose.yml(示例):version: '3'
services:
web:
image: nginx:latest
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: 123456
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
docker-compose up -d(后台启动所有服务);docker-compose down(停止并删除所有容器、网络、卷);docker-compose ps。/etc/docker/daemon.json,添加{"registry-mirrors": ["https://mirror.aliyuncs.com"]},重启Docker使配置生效(加快镜像下载速度);-v参数挂载主机目录或Docker卷(如-v my_volume:/app/data),避免容器删除后数据丢失;--cpus="1.5"(限制1.5核CPU)、--memory="512m"(限制512MB内存)参数限制容器资源,防止资源耗尽。