常用Docker命令
通用 / 信息类
docker --version
→ 查看Docker版本
docker info **
→ 显示系统信息(容器、镜像、存储等)
docker --help 或 docker <子命令> --help
→ 获取任何命令的帮助信息
镜像操作
docker pull <镜像名>[:标签]
→ 下载镜像(例如:docker pull nginx:latest)
docker images 或 docker image ls
→ 列出本地镜像
docker build -t 应用名:版本号 .
→ 从当前目录的Dockerfile构建镜像(例如:docker build -t myapp:1.0 .)
docker build -t 应用名:版本号 --no-cache .
→ 不使用缓存构建镜像
docker rmi <镜像> 或 docker image rm <镜像>
→ 删除镜像
docker image prune
→ 删除所有未使用的(悬空)镜像
docker push 用户名/仓库:标签
→ 推送镜像到注册表(如Docker Hub)
容器 -- 基础生命周期
docker run hello-world
→ 快速测试运行
docker run -d --name 容器名 -p 主机端口:容器端口 镜像名
→ 后台运行容器,命名并映射端口(例如:docker run -d --name my-nginx -p 8080:80 nginx)
docker ps 或 docker ps -a
→ 列出运行中的容器 / 所有容器
docker start|stop|restart <容器>
→ 启动 / 停止 / 重启现有容器(按名称或ID)
docker rm <容器>
→ 删除已停止的容器
docker rm -f <容器>
→ 强制删除运行中的容器
与运行中的容器交互
docker exec -it <容器> bash 或 sh
→ 在容器内打开交互式shell
docker logs -f <容器>
→ 实时跟踪日志
docker logs --tail 行数 <容器>
→ 显示最后N行日志(例如:docker logs --tail 100 my-nginx)
docker inspect <容器>
→ 查看容器详细信息(JSON格式)
docker stats
→ 实时查看所有容器的资源使用情况
清理命令(非常实用!)
docker system prune -a --volumes
→ 删除所有未使用的容器、镜像、网络和卷(谨慎使用!)
docker container prune
→ 删除所有已停止的容器
docker volume prune
→ 删除未使用的卷
docker network prune
→ 删除未使用的网络
常用的快速单行命令
# 临时运行一个容器,完成后自动删除
docker run --rm -it ubuntu bash
# 后台运行容器,并在停止时自动删除
docker run -d --rm --name temp-nginx -p 80:80 nginx
# 从容器复制文件到主机
docker cp 容器名:/路径/文件.txt ./文件.txt
# 从主机复制文件到容器
docker cp ./文件.txt 容器名:/路径/