一、基础信息查看
bash
docker version # 显示Docker版本信息
docker info # 显示Docker系统信息(容器、镜像数量等)
docker system df # 查看磁盘使用情况二、镜像管理
bash
docker images # 列出本地镜像
docker search nginx # 在Docker Hub搜索镜像
docker pull nginx:latest # 拉取镜像
docker push username/nginx:latest # 推送镜像到仓库
docker rmi nginx:latest # 删除镜像(可加-f强制)
docker build -t myapp:1.0 . # 基于Dockerfile构建镜像
docker tag nginx:latest mynginx:1.0 # 给镜像打标签
docker save -o mynginx.tar nginx:latest # 导出镜像为tar文件
docker load -i mynginx.tar # 从tar文件导入镜像
docker history nginx:latest # 查看镜像构建历史
docker commit container_name myimage:1.0 # 将容器保存为新镜像三、容器生命周期管理
bash
# 创建并运行容器
docker run nginx:latest # 基本运行
docker run -it ubuntu /bin/bash # 交互式运行
docker run -d nginx # 后台运行
docker run --name mynginx -p 80:80 nginx # 指定名称和端口映射
docker run -v /host:/container nginx # 挂载卷
docker run --restart=always nginx # 自动重启
# 容器控制
docker ps # 列出运行中的容器
docker ps -a # 列出所有容器(包括已停止)
docker start container_id # 启动已停止的容器
docker stop container_id # 停止运行中的容器
docker restart container_id # 重启容器
docker pause container_id # 暂停容器
docker unpause container_id # 恢复暂停的容器
docker rm container_id # 删除容器(加-f强制删除运行中的)
docker rm $(docker ps -aq) # 删除所有容器
# 进入容器
docker exec -it container_id /bin/bash # 在运行中的容器执行命令
docker attach container_id # 附加到运行中的容器(不推荐)
# 容器状态
docker logs container_id # 查看容器日志
docker logs -f container_id # 实时跟踪日志
docker top container_id # 查看容器内进程
docker stats container_id # 查看容器资源占用
docker inspect container_id # 查看容器详细信息
docker port container_id # 查看容器端口映射四、网络管理
bash
docker network ls # 列出所有网络
docker network inspect bridge # 查看网络详情
docker network create mynet # 创建自定义网络
docker network create --driver bridge --subnet 172.20.0.0/16 mynet # 指定子网
docker network connect mynet container_id # 将容器连接到网络
docker network disconnect mynet container_id # 断开容器网络
docker network rm mynet # 删除网络
docker network prune # 删除所有未使用的网络五、数据卷管理
bash
docker volume ls # 列出所有卷
docker volume create myvol # 创建卷
docker volume inspect myvol # 查看卷详情
docker volume rm myvol # 删除卷
docker volume prune # 删除所有未使用的卷六、镜像仓库(Registry)
bash
docker login # 登录到Docker Hub
docker logout # 登出
docker push username/image:tag # 推送镜像
docker pull username/image:tag # 拉取镜像七、系统清理
bash
docker system prune # 删除所有停止的容器、未使用的网络、悬空镜像
docker system prune -a # 更彻底清理(包括未使用的镜像)
docker container prune # 删除所有停止的容器
docker image prune # 删除未使用的镜像
docker volume prune # 删除未使用的卷
docker network prune # 删除未使用的网络八、Docker Compose(多容器编排)
bash
# 基本命令(注意:没有横杠)
docker compose up # 启动服务
docker compose up -d # 后台启动
docker compose down # 停止并删除容器、网络
docker compose down -v # 同时删除数据卷
# 查看与管理
docker compose ps # 查看容器状态
docker compose ls # 列出所有运行中的项目
docker compose logs # 查看日志
docker compose logs -f # 实时跟踪日志
docker compose top # 查看容器内进程
# 构建与镜像
docker compose build # 构建或重建服务
docker compose build --no-cache # 不使用缓存构建
docker compose pull # 拉取服务镜像
docker compose push # 推送服务镜像
# 容器操作
docker compose start # 启动服务
docker compose stop # 停止服务
docker compose restart # 重启服务
docker compose pause # 暂停服务
docker compose unpause # 恢复服务
docker compose kill # 强制停止服务
# 进入容器
docker compose exec service_name /bin/bash # 在运行中的服务执行命令
docker compose run service_name /bin/bash # 运行一次性命令(新容器)
# 配置与调试
docker compose config # 验证并查看配置
docker compose config --services # 列出所有服务
docker compose events # 实时查看容器事件
docker compose port service_name 80 # 查看端口映射
# 扩缩容
docker compose up --scale web=3 -d # 扩展服务实例数
# 清理
docker compose down --rmi all # 删除容器并删除所有镜像
docker compose down --volumes # 删除容器和数据卷
docker compose rm # 删除已停止的容器
# 查看依赖关系
docker compose images # 查看使用的镜像
docker compose version # 查看版本信息九、实用技巧组合
bash
# 删除所有停止的容器
docker container prune
# 删除所有未打标签的镜像(悬空镜像)
docker rmi $(docker images -f "dangling=true" -q)
# 停止所有运行中的容器
docker stop $(docker ps -q)
# 删除所有容器(包括运行中的)
docker rm -f $(docker ps -aq)
# 批量删除镜像
docker rmi -f $(docker images -q)
# 进入容器调试(推荐)
docker exec -it container_id sh
# 查看容器IP地址
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_id快速参考:常用参数
-d:后台运行-it:交互模式(-i交互,-t分配伪终端)-p:端口映射主机端口:容器端口-v:挂载卷主机路径:容器路径--name:指定容器名称--rm:容器停止后自动删除-e:设置环境变量--restart:重启策略(no/on-failure/always/unless-stopped)-m:限制内存使用--cpus:限制CPU使用
提示:大部分命令都有简写形式(如 docker ps 而不是 docker container ls),建议先从基础命令开始练习,逐步掌握。需要特定命令的详细用法,可以用 docker 命令 --help 查看帮助。
评论