Docker 常用命令大全(超详细笔记|适合新手+日常查阅)

Docker 常用命令大全(超详细笔记|适合新手 + 日常查阅)

这是一份面向新手快速上手 + 日常开发/运维高频查阅的 Docker 命令整理,涵盖了最常用、最实用的命令,按使用场景分类,并附带最常见的参数组合和实际使用示例。

一、基础信息类命令

命令说明常用写法示例
docker --version查看 docker 版本docker --version
docker info显示 docker 系统详细信息docker info --format '{{.ServerVersion}}'
docker system df查看镜像、容器、卷、构建缓存占用docker system df -v
docker system prune清理未使用的容器、网络、镜像、构建缓存docker system prune -a --volumes

二、镜像(Image)常用命令

操作命令常用示例 / 说明
拉取镜像docker pull <image>[:tag]docker pull redis:7
docker pull nginx:alpine
查看本地镜像docker images / docker image lsdocker images -a(包含中间层)
docker images -q(只显示 id)
删除镜像docker rmi <image>docker rmi nginx:1.23
docker rmi -f <id>(强制)
删除全部无用镜像docker image prunedocker image prune -a(删除所有未被容器使用的镜像)
给镜像打标签docker tag <source> <target>docker tag myapp:1.0 myapp:latest
导出镜像docker save -o 文件名.tar 镜像名docker save -o nginx.tar nginx:1.23
导入镜像docker load -i 文件名.tardocker load -i nginx.tar
查看镜像历史docker history <image>docker history --no-trunc nginx

三、容器(Container)常用命令

操作命令常用示例 / 说明
运行容器docker run [选项] 镜像 [命令]docker run -d -p 80:80 --name nginx nginx
列出容器docker ps / docker container lsdocker ps -a(包含停止的)
docker ps -q(只 id)
停止容器docker stop <容器名/id>docker stop nginx
启动已停止容器docker start <容器名/id>docker start nginx
重启容器docker restart <容器名/id>docker restart nginx
强制杀死容器docker kill <容器名/id>docker kill nginx
删除容器docker rm <容器名/id>docker rm -f nginx(强制删除运行中的)
删除所有停止容器docker container prunedocker container prune -f
进入容器交互docker exec -it <容器名/id> /bin/bashdocker exec -it nginx bash
常用:shash
查看容器日志docker logs <容器名/id>docker logs -f nginx(实时跟踪)
查看容器占用资源docker statsdocker stats --no-stream(单次快照)
查看容器详细信息docker inspect <容器名/id>docker inspect nginx --format '{{.NetworkSettings.IPAddress}}'
复制文件docker cp <容器名>:/path/file ./docker cp nginx:/etc/nginx/nginx.conf ./
从容器复制到宿主机docker cp ./file <容器名>:/path/docker cp app.jar nginx:/app/

四、构建镜像(Dockerfile 相关)

命令说明常用示例
构建镜像docker build -t 名称:标签 .docker build -t myapp:1.0 .
docker build -f Dockerfile.dev -t myapp:dev .
无缓存构建--no-cachedocker build --no-cache -t myapp:1.0 .
指定构建上下文以外的 Dockerfile-fdocker build -f sub/dir/Dockerfile -t xxx .
构建并立即运行(开发常用)docker buildx bake / docker compose见 compose 部分
多阶段构建使用 AS 关键字见 Dockerfile 高级写法

五、Docker Compose 常用命令(强烈推荐日常使用)

操作命令常用写法 / 说明
启动所有服务docker compose updocker compose up -d(后台运行)
停止并删除容器docker compose downdocker compose down -v(连卷一起删)
重启所有服务docker compose restartdocker compose restart web redis
查看日志docker compose logsdocker compose logs -f web(实时跟踪)
进入容器docker compose exec 服务名 bashdocker compose exec web bash
拉取最新镜像docker compose pull配合 up --build 使用
只构建不启动docker compose builddocker compose build --no-cache
指定配置文件-fdocker compose -f docker-compose.prod.yml up

六、高频实用组合命令(收藏必备)

功能命令组合示例
删除所有停止的容器docker rm $(docker ps -aq -f status=exited)
删除所有未使用的镜像docker rmi $(docker images -q -f dangling=true)
删除所有未被容器使用的镜像docker image prune -a
停止并删除所有容器docker stop $(docker ps -aq) && docker rm $(docker ps -aq)
清理全部(慎用)docker system prune -a --volumes
快速查看容器 IPdocker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 容器名
快速备份容器内文件docker cp 容器名:/app/data ./backup/
快速查看容器内运行的进程docker top 容器名

七、推荐日常使用的命令别名(放进 ~/.bashrc 或 ~/.zshrc)

alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
alias dpa='docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
alias drm='docker rm -f'
alias dlogs='docker logs -f'
alias dexec='docker exec -it'
alias dc='docker compose'
alias dcu='docker compose up -d'
alias dcd='docker compose down'
alias dcps='docker compose ps'
alias dclean='docker system prune -f && docker image prune -f'

八、快速记忆口诀(背下来就能快速上手)

  • 创建 → docker run / docker create
  • 启动/停止 → start / stop / restart
  • 查看 → ps / logs / inspect / stats
  • 删除 → rm(容器) / rmi(镜像) / prune(批量清理)
  • 构建 → build
  • 进入 → exec -it
  • 拷贝 → cp
  • Compose → dc up -d / dc down / dc logs -f

如果你需要某个命令的更详细用法常见报错解决Dockerfile 最佳实践多阶段构建完整案例Compose 生产级写法,或者Docker 网络、存储、Swarm 等进阶内容,欢迎继续提问,我可以继续展开。

文章已创建 4580

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部