目录
一、镜像(Image)操作
二、容器(Container)操作
1. 生命周期管理
2. 查看与监控
3. 数据操作
三、网络(Network)操作
四、卷(Volume)操作
五、系统维护
六、组合命令(高效操作)
七、日志管理
八、Docker Compose 常用命令
九、配置别名(简化操作)
十、可视化工具推荐
Docker 中操作镜像(Image)、容器(Container)等核心资源的常用命令大全,按功能分类整理:
一、镜像(Image)操作
命令 |
说明 |
示例 |
docker images |
列出本地镜像 |
docker images -a (含中间层镜像) |
docker pull |
拉取镜像 |
docker pull ubuntu:22.04 |
docker build |
构建镜像 |
docker build -t myapp:v1 . |
docker rmi |
删除镜像 |
docker rmi nginx:alpine |
docker image prune |
清理悬空镜像 |
docker image prune -a (清理所有未使用镜像) |
docker save |
导出镜像 |
docker save -o nginx.tar nginx |
docker load |
导入镜像 |
docker load -i nginx.tar |
docker history |
查看镜像构建历史 |
docker history nginx |
docker tag |
标记镜像 |
docker tag nginx myrepo/nginx:v2 |
二、容器(Container)操作
1. 生命周期管理
命令 |
说明 |
示例 |
docker run |
创建并启动容器 |
docker run -d -p 80:80 --name webserver nginx |
docker start/stop/restart |
启停容器 |
docker stop webserver |
docker rm |
删除容器 |
docker rm -f webserver (强制删除运行中容器) |
docker create |
创建但不启动 |
docker create --name temp ubuntu |
docker exec |
在运行中容器执行命令 |
docker exec -it webserver bash |
docker update |
更新容器配置 |
docker update --memory 512M webserver |
2. 查看与监控
命令 |
说明 |
示例 |
docker ps |
列出容器 |
docker ps -a (含停止的容器) |
docker logs |
查看容器日志 |
docker logs -f webserver (实时日志) |
docker top |
查看容器进程 |
docker top webserver |
docker stats |
实时资源监控 |
docker stats (所有容器) |
docker inspect |
查看容器详情 |
docker inspect webserver |
docker port |
查看端口映射 |
docker port webserver 80 |
docker diff |
查看文件变更 |
docker diff webserver |
3. 数据操作
命令 |
说明 |
示例 |
docker cp |
复制文件 |
docker cp webserver:/etc/nginx . |
docker commit |
创建新镜像 |
docker commit webserver mynginx |
三、网络(Network)操作
命令 |
说明 |
示例 |
docker network ls |
列出网络 |
|
docker network create |
创建网络 |
docker network create mynet |
docker network inspect |
查看网络详情 |
docker network inspect bridge |
docker network connect |
连接容器到网络 |
docker network connect mynet webserver |
docker network prune |
清理未使用网络 |
|
四、卷(Volume)操作
命令 |
说明 |
示例 |
docker volume ls |
列出卷 |
|
docker volume create |
创建卷 |
docker volume create dbdata |
docker volume inspect |
查看卷详情 |
|
docker volume rm |
删除卷 |
docker volume rm dbdata |
docker volume prune |
清理未使用卷 |
|
五、系统维护
命令 |
说明 |
示例 |
docker system df |
查看磁盘使用 |
|
docker system prune |
清理所有未使用资源 |
docker system prune -a --volumes |
docker info |
显示系统信息 |
|
docker version |
显示版本信息 |
|
docker events |
查看实时事件 |
docker events --filter 'event=start' |
六、组合命令(高效操作)
# 1. 批量停止所有容器
docker stop $(docker ps -q)
# 2. 批量删除所有容器
docker rm -f $(docker ps -aq)
# 3. 批量删除所有镜像
docker rmi -f $(docker images -q)
# 4. 清理所有无用资源
docker system prune -a -f --volumes
# 5. 按名称过滤容器
docker ps --filter "name=web"
# 6. 按状态过滤容器
docker ps --filter "status=exited"
# 7. 查看容器资源限制
docker stats --no-stream --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
七、日志管理
# 1. 查看最后100行日志
docker logs --tail 100 webserver
# 2. 查看特定时间段的日志
docker logs --since 2023-01-01 --until 2023-01-02 webserver
# 3. JSON格式日志解析
docker logs webserver | jq
八、Docker Compose 常用命令
命令 |
说明 |
docker-compose up -d |
启动服务 |
docker-compose down |
停止并删除资源 |
docker-compose ps |
查看服务状态 |
docker-compose logs |
查看服务日志 |
docker-compose build |
重新构建镜像 |
docker-compose exec |
进入服务容器 |
九、配置别名(简化操作)
在 ~/.bashrc
中添加:
alias dk='docker'
alias dkc='docker-compose'
alias dkps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
alias dkimg='docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"'
alias dkprune='docker system prune -af'
执行 source ~/.bashrc
生效
十、可视化工具推荐
- Portainer:
docker run -d -p 9000:9000 --name portainer \
-v /var/run/docker.sock:/var/run/docker.sock \
portainer/portainer
- Lazydocker:
docker run --rm -it -v \
/var/run/docker.sock:/var/run/docker.sock \
lazyteam/lazydocker
这些命令覆盖了 Docker 日常管理的核心场景,建议收藏作为速查手册!