以下是一些 Docker 常用命令 ,适用于日常开发、调试、部署等场景,分为几个常用类别:
📦 一、镜像(Image)相关命令命令 说明 docker images
查看本地所有镜像 docker pull <image>
拉取镜像(如 docker pull nginx
) docker build -t <name:tag> .
构建镜像(根据当前目录的 Dockerfile) docker rmi <image_id>
删除指定镜像 docker rmi $(docker images -q)
删除所有本地镜像 docker image inspect <image>
查看镜像详细信息
🧱 二、容器(Container)相关命令命令 说明 docker ps
查看正在运行的容器 docker ps -a
查看所有容器(包括已停止的) docker run <options> <image>
运行一个新容器(常用参数见下) docker stop <container_id>
停止指定容器 docker start <container_id>
启动已停止的容器 docker restart <container_id>
重启容器 docker rm <container_id>
删除指定容器 docker rm -f $(docker ps -aq)
强制删除所有容器 docker logs <container_id>
查看容器日志 docker exec -it <container_id> /bin/bash
进入正在运行的容器(bash shell) docker inspect <container_id>
查看容器详细信息
✅ docker run
常用参数参数 说明 -d
后台运行容器 -p <host_port>:<container_port>
映射端口(如 -p 8080:80
) -v <host_path>:<container_path>
挂载卷(目录映射) --name <name>
指定容器名称 -e <KEY=VALUE>
设置环境变量 --network <network>
指定网络 --rm
容器退出后自动删除 --restart always
容器随 Docker 自动重启
🌐 三、网络(Network)相关命令命令 说明 docker network ls
查看所有网络 docker network inspect <network>
查看网络详情 docker network create <name>
创建自定义网络 docker network connect <network> <container>
将容器加入网络 docker network disconnect <network> <container>
断开容器网络
🗂 四、数据卷(Volume)相关命令命令 说明 docker volume ls
查看所有数据卷 docker volume inspect <volume>
查看数据卷详情 docker volume create <name>
创建数据卷 docker volume rm <name>
删除数据卷 docker volume prune
清理未使用的数据卷
🧼 五、清理命令(释放空间)命令 说明 docker system prune
清理未使用的容器、镜像、网络、构建缓存 docker system prune -a
更彻底清理(包括未使用的镜像) docker image prune -a
清理未使用的镜像 docker container prune
清理已停止的容器 docker volume prune
清理未使用的数据卷
📊 六、查看信息命令命令 说明 docker info
查看 Docker 系统信息 docker version
查看 Docker 版本信息 docker stats
实时查看容器资源使用情况(CPU、内存等)
📁 七、文件复制命令命令 说明 docker cp <container_id>:/path/to/file /host/path
从容器拷贝文件到宿主机 docker cp /host/path <container_id>:/path/to/file
从宿主机拷贝文件到容器
🧪 八、构建与推送镜像(用于 CI/CD)
docker build -t myapp:1.0 .
docker tag myapp:1.0 registry.example.com/myapp:1.0
docker push registry.example.com/myapp:1.0
docker login registry.example.com
📝 示例:运行一个 Nginx 容器并挂载配置文件
docker run -d \ --name mynginx \ -p 80 :80 \ -v /mydata/nginx.conf:/etc/nginx/nginx.conf \ nginx
✅ 小贴士
使用 --name
给容器命名,便于管理。 多容器项目建议使用 docker-compose.yml
管理。 使用 docker-compose up -d
启动多个服务更方便。 推荐使用命名卷(named volumes)或绑定挂载(bind mounts)管理持久化数据。
如果你有具体的使用场景(如部署 Spring Boot、Vue、MySQL 等),我可以给出更详细的命令示例。欢迎继续提问!