1 镜像管理
搜索镜像
docker search <镜像名>
docker search nginx
# 查找官方仓库镜像拉取镜像
docker pull <镜像名>:<标签>
docker pull ubuntu:22.04
# 不指定标签默认下载最新版查看本地镜像
docker images
docker image ls
# 新语法(推荐)
docker images -q
# 仅显示镜像ID(用于批量操作)删除镜像
docker rmi <镜像ID或名称>
docker rmi nginx
docker rmi $(docker images -q)
# 删除所有镜像(谨慎!)导出/导入镜像
docker save -o nginx.tar nginx:latest
# 导出为tar包
docker load -i nginx.tar
# 从tar包导入
2 容器生命周期
2.1 创建并启动容器
docker run [选项] <镜像>
核心选项:
- -d:后台运行(守护态)
- -p 80:80:端口映射(主机:容器)
- -v /宿主机目录:/容器目录:目录挂载
- --name my_container:指定容器名
- -e VAR=value:设置环境变量
- --rm:退出时自动删除容器
示例:
docker run -d -p 8080:80 --name my_web nginx
2.2 启动/停止/重启容器
docker start <容器名/ID>
docker stop <容器名/ID> # 优雅停止(SIGTERM)
docker restart <容器名/ID
2.3 暂停/恢复容器
docker pause <容器名/ID> # 冻结进程
docker unpause <容器名/ID>
2.4 删除容器
docker rm <容器名/ID>
docker rm -f <容器名/ID> # 强制删除运行中的容器
docker container prune # 删除所有已停止容器
3 容器运维
3.1 查看容器列表
docker ps # 查看运行中的容器
docker ps -a # 查看所有容器(包括已停止)
docker ps -q # 仅显示容器ID
3.2 查看容器日志
docker logs <容器名/ID>
docker logs -f # 实时跟踪日志(类似 tail -f)
docker logs --tail 50 # 查看最后50行
3.3 进入容器终端
docker exec -it <容器名/ID> /bin/bash
-it:交互式终端
支持 /bin/sh、/bin/zsh 等Shell
3.4 查看容器信息
docker inspect <容器名/ID> # 获取详细配置(JSON格式)
docker stats # 实时监控资源占用(CPU/内存/网络)
4 系统清理
4.1 清理无用资源
docker system prune # 删除停止的容器、未使用的网络和悬空镜像
docker system prune -a # 额外删除未被任何容器使用的镜像
4.2 查看磁盘使用
docker system df # 显示镜像/容器/数据卷占用空间