Docker常用命令速查:容器管理必备

Docker命令太多记不住?整理一份速查表。

镜像操作

# 拉取镜像
docker pull nginx

# 查看镜像
docker images

# 删除镜像
docker rmi 镜像ID

# 构建镜像
docker build -t myapp:v1 .

# 保存/加载镜像
docker save myapp:v1 > myapp.tar
docker load < myapp.tar

容器操作

# 运行容器
docker run -d -p 80:80 --name mynginx nginx

# 查看容器
docker ps        # 运行中的
docker ps -a     # 全部

# 停止/启动/重启
docker stop 容器ID
docker start 容器ID
docker restart 容器ID

# 删除容器
docker rm 容器ID
docker rm -f 容器ID  # 强制

# 进入容器
docker exec -it 容器ID /bin/bash

# 查看日志
docker logs 容器ID
docker logs -f 容器ID  # 实时

常用参数

docker run \
    -d                    # 后台运行
    -p 80:80              # 端口映射
    --name myapp          # 容器名
    -v /host:/container   # 目录挂载
    -e MY_VAR=value       # 环境变量
    --restart=always      # 自动重启
    nginx

清理

# 清理停止的容器
docker container prune

# 清理无用镜像
docker image prune

# 全部清理
docker system prune -a

查看资源使用

docker stats

远程管理

我用星空组网管理多台服务器的Docker:

for ip in 10.26.1.{10..12}; do
    echo "=== $ip ==="
    ssh root@$ip "docker ps --format 'table {{.Names}}\t{{.Status}}'"
done

有问题评论区交流~

更多推荐