# 查看镜像的详细信息
docker inspect
# 限制容器的资源
docker run -d --memory="512m" --cpus="1" --name my_container my_image
# 备份容器的数据
CONTAINER_ID=$1
BACKUP_FILE="${CONTAINER_ID}_backup_$(date +%F).tar"
docker export $CONTAINER_ID > $BACKUP_FILE
echo "备份保存到 $BACKUP_FILE"
# 从备份恢复容器
BACKUP_FILE=$1
docker import $BACKUP_FILE restored_container:latest
echo "容器恢复为 'restored_container:latest'"
# 删除停止的容器
docker rm $(docker ps -aq -f "status=exited")
# 自动重启容器
docker update --restart always CONTAINER_NAME
# 运行容器并在退出后清理
docker run --rm IMAGE_NAME
# 列出所有容器的镜像层
docker inspect --format '{{.Id}}: {{.Image}}' $(docker ps -q)
# 自动清理未使用的资源 (删除未使用的卷)
docker system prune -f --volumes
# 列出所有未被引用的镜像ID, 并删除
docker rmi $(docker images -q -f "dangling=true")
# 监控容器的资源使用情况
docker stats --all
# 重启所有容器
docker start $(docker ps -aq)
# 从容器复制文件到是宿主机
docker cp CONTAINER_ID:容器内文件绝对路径 宿主机路径(示例: docker cp nginx:/var/www/html/index.html ./)
# 列出所有暴露的端口
docker ps --format '{{.ID}}: {{.Ports}}'
# 检查所有容器的日志
docker ps -q | xargs -I {} docker logs {}
# 删除挂起的容器
docker rm $(docker ps -aq -f "status=paused")