Docker 常用命令整理
镜像管理
拉取镜像
docker pull [镜像名]:[标签] # 例如:docker pull ubuntu:20.04查看本地镜像
docker images删除镜像
docker rmi [镜像ID或名称] # 删除单个镜像 docker rmi $(docker images -q) # 删除所有镜像(谨慎操作)构建镜像
docker build -t [镜像名]:[标签] [Dockerfile路径] # 例如:docker build -t myapp:v1 .
容器操作
启动新容器
docker run [选项] [镜像名]- 常用选项:
-d:后台运行(守护模式)-p 宿主机端口:容器端口:端口映射(例如-p 8080:80)-v 宿主机路径:容器路径:挂载数据卷(例如-v /data:/app/data)-e 环境变量:设置环境变量(例如-e MYSQL_ROOT_PASSWORD=123)--name 容器名:指定容器名称--network 网络名:指定容器网络
- 常用选项:
查看容器
docker ps # 查看运行中的容器 docker ps -a # 查看所有容器(包括已停止的)启动/停止/重启容器
docker start [容器ID或名称] docker stop [容器ID或名称] docker restart [容器ID或名称]进入容器终端
docker exec -it [容器ID或名称] /bin/bash # 进入交互式终端查看容器日志
docker logs [容器ID或名称] docker logs -f [容器ID或名称] # 实时跟踪日志删除容器
docker rm [容器ID或名称] # 删除已停止的容器 docker rm -f [容器ID或名称] # 强制删除运行中的容器 docker container prune # 删除所有停止的容器
数据卷管理
创建数据卷
docker volume create [卷名]查看数据卷
docker volume ls删除数据卷
docker volume rm [卷名] docker volume prune # 删除未使用的数据卷
网络管理
查看网络列表
docker network ls创建自定义网络
docker network create [网络名]连接容器到网络
docker network connect [网络名] [容器ID或名称]
其他实用命令
查看容器资源占用
docker stats [容器ID或名称]查看容器详细信息
docker inspect [容器ID或名称]清理无用资源
docker system prune # 删除停止的容器、未使用的镜像和网络
Docker Compose 常用命令
启动服务
docker-compose up -d # 后台启动停止服务
docker-compose down查看服务状态
docker-compose ps重新构建镜像并启动
docker-compose up --build
常用场景示例
运行一个 Nginx 容器并挂载网页目录
docker run -d --name my-nginx -p 80:80 -v /host/html:/usr/share/nginx/html nginx进入 Redis 容器并执行命令
docker exec -it my-redis redis-cli