跳到主要内容

Docker 命令速查 —— 80+ 真实命令带常见坑、Compose 与构建技巧

Docker 命令速查,80+ 条命令带真实例子和常见坑,含 Compose 章节。

  • 本地处理
  • 分类 开发运维
  • 适合 格式化、校验、压缩或检查和代码相关的文本。
89 条命令
镜像 (12)
docker pull <image>

从 registry 拉取镜像(或指定 tag)到本地。

常见坑: 不加 tag 默认拉 :latest,这个标签会一直变。生产环境要钉死版本号。

例子
docker pull nginx
docker pull node:20-alpine
docker pull ghcr.io/user/app:v1.2.3
docker push <image>

把本地镜像推到 registry。镜像必须先 tag 成 registry 完整路径。

常见坑: 没 docker login 或 tag 不带 registry 前缀,push 会报 "denied"。先 tag 再 login 再 push。

例子
docker push myorg/app:v1.0
docker push registry.example.com/team/app:latest
docker build -t <name> <path>

按 <path> 下的 Dockerfile 构建镜像并打 <name> 标签。

常见坑: 构建上下文是整个目录 —— 没写 .dockerignore 会把 node_modules / .git 一起塞进 daemon,几个 GB 起步。

例子
docker build -t myapp .
docker build -t myapp:v1.0 -f Dockerfile.prod .
docker build --no-cache -t myapp .
docker images

列出本地所有镜像,含仓库、tag、ID、年龄、体积。

例子
docker images
docker images -a
docker images --filter "dangling=true"
docker rmi <image>

删除本地镜像。可一次删多个。

常见坑: `rmi` 删镜像,`rm` 删容器。两者混淆是 docker 新手第一坑。还有容器在用要加 -f 强删。

例子
docker rmi nginx:1.25
docker rmi -f myapp:old
docker rmi $(docker images -q -f "dangling=true")
docker tag <src> <dst>

给已有镜像加一个新 tag。新旧 tag 指向同一个 image ID。

常见坑: tag 不会复制数据 —— push 新 tag 会复用已有 layer,几乎瞬完成。

例子
docker tag myapp:latest myorg/myapp:v1.0
docker tag abc123 registry.example.com/team/app:prod
docker save -o <file.tar> <image>

把镜像(含所有 layer 和元信息)打包成 tar 文件,适合离网传输。

例子
docker save -o myapp.tar myapp:v1.0
docker save myapp:v1.0 | gzip > myapp.tar.gz
docker load -i <file.tar>

从 docker save 生成的 tar 文件导入镜像。

常见坑: `load` 是恢复镜像;`import` 是从裸文件系统 tar 造镜像。输入不同命令不同。

例子
docker load -i myapp.tar
gunzip -c myapp.tar.gz | docker load
docker history <image>

查看镜像的逐层构建历史 —— 每条命令、体积、时间戳。

例子
docker history nginx
docker history --no-trunc myapp:v1.0
docker scout cves <image>

扫描镜像的已知 CVE 漏洞(取代了已弃用的 docker scan)。

常见坑: `docker scan`(Snyk 那套)从 Docker Desktop 4.27 起已弃用。新项目用 docker scout。

例子
docker scout cves myapp:latest
docker scout quickview myapp:latest
docker image prune

删除所有悬挂镜像(无 tag 的镜像,一般是反复构建留下的残渣)。

常见坑: 加 `-a` 会删所有未使用的镜像(不只是悬挂的),会误删还想留的镜像。

例子
docker image prune
docker image prune -a
docker image prune -a --filter "until=168h"
docker inspect <image>

打印镜像的底层 JSON 元信息:layer、env、entrypoint、暴露端口、label。

例子
docker inspect nginx
docker inspect --format "{{.Config.Env}}" myapp
容器 (29)
docker run <image>

基于镜像创建并起一个新容器。docker 最常用命令。

常见坑: 每次 docker run 都新建一个容器。反复跑会堆一堆停止状态的容器,一次性任务加 --rm,复用就 docker start <name>。

例子
docker run nginx
docker run -d -p 8080:80 nginx
docker run --rm -it ubuntu bash
docker run -it <image> <cmd>

交互式起容器并分配 TTY。-i 保持 STDIN 打开,-t 分配伪终端。两个合起来才有真正的 shell。

常见坑: 只 -i 没提示符,只 -t 收不到输入。两个一起用。被 pipe 的时候去掉 -t(如 echo x | docker run -i …)。

例子
docker run -it ubuntu bash
docker run -it --rm alpine sh
docker run -it node:20 node
docker run -d <image>

后台起容器(detached 模式),只输出容器 ID。

例子
docker run -d nginx
docker run -d --name web -p 80:80 nginx
docker run --rm <image>

容器退出时自动删除。一次性命令必备,不会堆积死容器。

常见坑: --rm 是退出时删容器,不删镜像。容器里没挂卷的目录里的数据,退出就没。

例子
docker run --rm alpine echo hello
docker run --rm -v $(pwd):/work -w /work node:20 npm test
docker run -p <host>:<container> <image>

把容器端口映射到宿主机。格式:宿主端口:容器端口。

常见坑: 宿主端口写前面,容器端口写后面。颠倒了就出现“app 监听了但访问不到”的迷惑错误。

例子
docker run -p 8080:80 nginx
docker run -p 127.0.0.1:5432:5432 postgres
docker run -P nginx
docker run -v <host>:<container> <image>

把宿主路径或命名卷挂到容器内指定路径。

常见坑: macOS/Windows 的 bind mount 巨慢(要经过 VM 同步)。node_modules 这种热路径用命名卷。

例子
docker run -v $(pwd):/app node:20
docker run -v mydata:/var/lib/mysql mysql
docker run -v $(pwd):/app:ro alpine
docker run --name <name> <image>

给容器起一个好认的名字,不要再用自动生成的“happy_elephant”。

常见坑: 名字必须唯一。同名再起会失败,要先 docker rm 老的。

例子
docker run --name web -d nginx
docker run --name pg -e POSTGRES_PASSWORD=secret -d postgres
docker run -e KEY=value <image>

向容器传环境变量。

常见坑: 密钥写在命令行会留在 shell 历史里。用 --env-file .env 或专门的 secret 管理。

例子
docker run -e NODE_ENV=production node:20
docker run --env-file .env myapp
docker run -e DEBUG=1 -e LOG_LEVEL=info myapp
docker run --restart unless-stopped <image>

重启策略:崩了重启、daemon 重启也重启,但你手动 docker stop 后不会自动起。

常见坑: `--restart=always` 你 docker stop 之后 daemon 重启它还会复活。`unless-stopped` 才是日常想要的。

例子
docker run -d --restart unless-stopped --name web nginx
docker run -d --restart on-failure:5 myapp
docker ps

列出正在运行的容器。加 -a 包含已停止的。

例子
docker ps
docker ps -a
docker ps --filter "status=exited"
docker ps --format "table {{.Names}}\t{{.Status}}"
docker start <container>

启动一个或多个已停止的容器(保留 run 时的所有数据和配置)。

例子
docker start web
docker start -a web
docker start $(docker ps -aq -f "status=exited")
docker stop <container>

优雅停止容器(先 SIGTERM,10 秒后再 SIGKILL)。

常见坑: 不处理 SIGTERM 的应用(如 sh -c 包起来的 node)会被直接 KILL。Dockerfile 用 CMD 的 exec 形式(数组形式)。

例子
docker stop web
docker stop -t 30 web
docker stop $(docker ps -q)
docker restart <container>

先停后起一个容器 —— 卡死进程最快的修法之一。

例子
docker restart web
docker restart -t 5 web
docker rm <container>

删除一个或多个已停止的容器。-f 强删运行中的。

常见坑: `rm` 删容器,`rmi` 删镜像。容器挂的卷不会被删,要一起删加 -v。

例子
docker rm web
docker rm -f web
docker rm -v old-db
docker rm $(docker ps -aq)
docker exec -it <container> <cmd>

在运行中的容器里跑一条临时命令 —— 一般是开个 shell 进去看看。

常见坑: 容器必须在运行。停了的容器用 exec 不行,要先 docker start,或干脆 docker run 个新的。

例子
docker exec -it web bash
docker exec -it web sh
docker exec web ls /etc
docker exec -u 0 -it web bash
docker logs <container>

打印容器的 STDOUT + STDERR(应用直接打到屏幕的,不是磁盘上的日志文件)。

常见坑: 应用把日志写进 /var/log/app.log 而不是 stdout,docker logs 就是空。12-factor 应用都 log 到 stdout。

例子
docker logs web
docker logs -f web
docker logs --tail 100 web
docker logs --since 10m web
docker attach <container>

把终端接到运行中容器的主进程上。注意 Ctrl-C 会把容器干掉。

常见坑: `attach` 不是开 shell —— 是接到已存在的进程上。没特殊需要就用 docker exec -it … bash。

例子
docker attach web
docker attach --detach-keys="ctrl-p,ctrl-q" web
docker cp <src> <dst>

在宿主和容器之间拷文件。哪边都可以是容器。

例子
docker cp web:/etc/nginx/nginx.conf ./nginx.conf
docker cp ./fix.patch web:/tmp/
docker cp web:/var/log/. ./logs/
docker inspect <container>

打印容器的所有底层 config 和状态 JSON:IP、挂载、env、网络、退出码。

例子
docker inspect web
docker inspect --format "{{.State.Status}}" web
docker inspect --format "{{.NetworkSettings.IPAddress}}" web
docker stats

实时查看运行容器的 CPU、内存、网络、磁盘 IO。

例子
docker stats
docker stats --no-stream
docker stats web db
docker top <container>

查看容器内部在跑的进程(类似宿主 ps)。

例子
docker top web
docker top web aux
docker kill <container>

立即给容器主进程发 SIGKILL(或用 -s 发其他信号)。

常见坑: SIGKILL 应用没机会善后 —— 文件写一半、DB 没刷盘。除非卡死,平时都用 docker stop。

例子
docker kill web
docker kill -s SIGHUP web
docker rename <old> <new>

重命名一个已存在的容器。

例子
docker rename web web-old
docker rename happy_elephant payment-service
docker pause <container>

用 cgroup freezer 冻结容器内所有进程(进程还在内存里)。

常见坑: 暂停的容器端口和内存都还占着。只适合调试,别拿来当“低资源待机”。

例子
docker pause web
docker unpause web
docker unpause <container>

恢复一个已暂停的容器。

例子
docker unpause web
docker commit <container> <image>

把运行中容器的文件系统快照成新镜像。调试用,不要拿来构建生产镜像。

常见坑: commit 出来的镜像是黑盒 —— 没 Dockerfile、不可重现。要发布的镜像永远走 Dockerfile。

例子
docker commit web debug-snapshot:v1
docker commit -m "added trace" -a "lei" web debug:v2
docker diff <container>

显示容器相对于基础镜像新增(A)、改动(C)、删除(D)的所有文件。

例子
docker diff web
docker wait <container>

阻塞直到容器退出,然后打印退出码。

例子
docker wait batch-job
EXIT=$(docker wait batch-job) && echo "Job finished: $EXIT"
docker port <container>

列出容器对外的端口映射。

例子
docker port web
docker port web 80
网络 (7)
docker network ls

列出所有 docker 网络。默认就有 bridge、host、none 三个。

例子
docker network ls
docker network ls --filter "driver=bridge"
docker network create <name>

创建一个用户自定义 bridge 网络。同一网络内的容器可以用容器名互相解析。

常见坑: 默认 bridge 网络没有基于 DNS 的服务发现 —— 容器之间不能用名字互通。生产/开发都建一个用户网络。

例子
docker network create app-net
docker network create --driver bridge app-net
docker network create --subnet 172.20.0.0/16 app-net
docker network inspect <network>

查看网络详情:子网、网关、连接的容器、选项。

例子
docker network inspect bridge
docker network inspect app-net
docker network connect <network> <container>

把运行中容器接到额外的网络(容器可同时在多个网络)。

例子
docker network connect app-net web
docker network connect --alias api app-net web
docker network disconnect <network> <container>

把容器从某个网络断开,但不停容器。

例子
docker network disconnect app-net web
docker network disconnect -f app-net web
docker network rm <network>

删除一个或多个空的用户自定义网络。

常见坑: 还有容器连着的网络删不掉,要先 disconnect 容器或删容器。

例子
docker network rm app-net
docker network prune
docker run --network <name> <image>

启动容器时直接接到指定网络。

例子
docker run -d --network app-net --name web nginx
docker run --network host nginx
数据卷 (5)
docker volume ls

列出所有 docker 管理的卷。

例子
docker volume ls
docker volume ls --filter "dangling=true"
docker volume create <name>

创建命名卷。数据脱离容器生命周期持久化。

例子
docker volume create pgdata
docker volume create --driver local --opt type=tmpfs fastdata
docker volume inspect <name>

查看卷的元信息:driver、宿主上的挂载点、label。

例子
docker volume inspect pgdata
docker volume rm <name>

删除一个或多个卷。还有容器在用会失败。

常见坑: 删卷不可逆 —— DB 数据真没了。共享卷在 prune 前先备份。

例子
docker volume rm pgdata
docker volume rm $(docker volume ls -q -f "dangling=true")
docker volume prune

删除所有当前没被任何容器使用的卷。

常见坑: 停止的容器算“在用”。只被已删容器引用过的卷算“没用”,会被 prune 掉。

例子
docker volume prune
docker volume prune -a -f
系统 (7)
docker system df

显示镜像、容器、卷、构建缓存各占多少磁盘(docker 版的 du)。

例子
docker system df
docker system df -v
docker system prune

一把清掉已停容器、悬挂镜像、没用的网络、构建缓存。

常见坑: `-a --volumes` 会连未用的镜像和卷一起删,常见事故就是 DB 数据被这条命令清没。看清提示再 y。

例子
docker system prune
docker system prune -a
docker system prune -a --volumes
docker system info

打印 daemon 级别信息:容器/镜像总数、存储驱动、内核、操作系统、registry 镜像。

例子
docker info
docker info --format "{{.ServerVersion}}"
docker version

显示 client、server 版本,API 版本,Go 版本,git commit。

例子
docker version
docker version --format "{{.Server.Version}}"
docker events

实时流式输出 daemon 事件:容器启停、镜像 pull、网络创建。调试神器。

例子
docker events
docker events --filter "type=container"
docker events --since 1h --until 5m
docker login

登录到一个 registry。凭证存在 ~/.docker/config.json。

常见坑: 共享机上 config.json 可能明文存。用 docker-credential-helpers(osxkeychain / pass)才安全。

例子
docker login
docker login ghcr.io
echo $TOKEN | docker login -u user --password-stdin ghcr.io
docker logout

清除已缓存的 registry 凭证。

例子
docker logout
docker logout ghcr.io
Compose (11)
docker compose up

创建并启动 compose.yaml 里定义的所有服务。加 -d 后台跑。

常见坑: `docker-compose`(带横线)是 V1 已弃用。现在用 `docker compose`(空格),是内置在新版 docker 里的 V2 插件。

例子
docker compose up
docker compose up -d
docker compose up --build
docker compose up web db
docker compose down

停止并删除所有容器、网络、默认网络。加 -v 连命名卷一起删。

常见坑: `down -v` 会把数据卷一起清。开发顺手敲一下没事,到 staging 同样命令就丢用户数据。把 -v 当作破坏性操作。

例子
docker compose down
docker compose down -v
docker compose down --rmi all
docker compose ps

列出本 compose 项目管理的容器(带健康状态和端口)。

例子
docker compose ps
docker compose ps --status running
docker compose logs

聚合查看所有服务的日志。-f 跟踪,--tail 限定每个服务的行数。

例子
docker compose logs
docker compose logs -f web
docker compose logs --tail=50 -f
docker compose build

构建(或重建)compose.yaml 里所有写了 build: 的服务。

常见坑: 默认 `docker compose up` 不会因为 Dockerfile 改了就重建。要么加 --build,要么先单独 build。

例子
docker compose build
docker compose build --no-cache web
docker compose build --pull
docker compose restart

重启所有(或指定)服务,但不重建容器。

例子
docker compose restart
docker compose restart web
docker compose exec <svc> <cmd>

在 compose 服务的运行容器里执行命令(区别于 run,run 会起新容器)。

例子
docker compose exec web bash
docker compose exec db psql -U postgres
docker compose exec -T db pg_dump mydb > backup.sql
docker compose run <svc> <cmd>

为某服务起一个临时新容器跑命令。会接上网络和卷,但默认不发布端口。

常见坑: `compose run` 默认不发布 compose.yaml 里写的端口,要端口加 --service-ports。

例子
docker compose run --rm web npm test
docker compose run --rm --service-ports web bash
docker compose pull

为所有写了 image: 的服务拉取最新镜像。

例子
docker compose pull
docker compose pull web db
docker compose config

解析并校验 compose.yaml,打印合并后的最终配置。调试环境变量插值很好用。

例子
docker compose config
docker compose config --services
docker compose -f compose.yaml -f compose.prod.yaml config
docker compose stop

停止服务但不删容器。之后用 start 启回来。

例子
docker compose stop
docker compose stop web
构建技巧 (9)
DOCKER_BUILDKIT=1 docker build

启用 BuildKit —— 现代构建引擎,支持并行 layer、cache mount、secret,构建速度起飞。

常见坑: BuildKit 从 Docker Engine 23.0 起默认开启。老版本要么每次 export DOCKER_BUILDKIT=1,要么写到 daemon.json。

例子
DOCKER_BUILDKIT=1 docker build -t myapp .
docker buildx build -t myapp .
docker build --target <stage>

在多阶段 Dockerfile 里只构建到指定 stage。dev 镜像停在 builder 阶段很常用。

例子
docker build --target builder -t myapp:dev .
docker build --target prod -t myapp:prod .
docker build --platform <plat>

构建指定目标平台的镜像。支持跨架构(amd64 宿主构 linux/arm64),底层走模拟。

常见坑: QEMU 模拟跨架构构建比原生慢 5-20 倍。生产多架构用 docker buildx + 远端 ARM 节点。

例子
docker build --platform linux/amd64 -t myapp .
docker buildx build --platform linux/amd64,linux/arm64 -t myorg/myapp --push .
docker build --build-arg <KEY=VALUE>

传一个构建时变量给 Dockerfile 里 ARG 对应的字段。

常见坑: ARG 值会出现在 docker history 里 —— 千万别这样传密钥。用 BuildKit 的 --secret 才安全。

例子
docker build --build-arg NODE_VERSION=20 -t myapp .
docker build --build-arg GIT_SHA=$(git rev-parse HEAD) -t myapp .
docker buildx build --secret

向构建传递密钥,不会出现在最终镜像或 docker history 里。

例子
docker buildx build --secret id=npmrc,src=$HOME/.npmrc -t myapp .
RUN --mount=type=secret,id=npmrc cp /run/secrets/npmrc ./
docker buildx build --cache-from

从远端镜像复用构建缓存(CI 里本地缓存为空时特别有用)。

例子
docker buildx build --cache-from type=registry,ref=myorg/myapp:cache --cache-to type=registry,ref=myorg/myapp:cache,mode=max -t myorg/myapp:v1 --push .
.dockerignore

告诉 docker 构建上下文里要排除哪些路径。语法跟 .gitignore 一样。

常见坑: 没 .dockerignore,docker 会把 node_modules、.git、dist、.env 全传给 daemon —— 构建慢,密钥还可能漏进 layer。

例子
echo "node_modules\n.git\ndist\n.env*" > .dockerignore
multi-stage Dockerfile

用多个 FROM 块在第一阶段(带工具链)构建,把产物复制到极小的运行时镜像。

常见坑: 不用多阶段,生产镜像把 gcc、npm、源码、测试都带上 —— 轻松 1GB+。用了多阶段同样的应用 50MB 搞定。

例子
FROM node:20 AS builder\nWORKDIR /app\nCOPY . .\nRUN npm ci && npm run build\n\nFROM nginx:alpine\nCOPY --from=builder /app/dist /usr/share/nginx/html
docker buildx

扩展构建命令(BuildKit)。多平台、缓存后端、输出到 registry/tar/oci,一站式。

例子
docker buildx create --use --name multi
docker buildx build --platform linux/amd64,linux/arm64 -t myorg/app --push .
docker buildx ls
常见错误 (9)
Cannot connect to the Docker daemon

daemon 没起,或当前用户不在 docker 组。Linux 上:sudo systemctl start docker 然后 sudo usermod -aG docker $USER 重登。

常见坑: macOS/Windows 上 daemon 就是 Docker Desktop —— 把 app 开起来。WSL2 要在 Docker Desktop 里给对应发行版开 WSL 集成。

例子
sudo systemctl start docker
sudo systemctl status docker
docker context ls
permission denied while trying to connect (Linux)

当前用户没在 docker 组。加入并重登(组成员关系是登录时加载的)。

常见坑: `sudo docker` 能跑,但每条命令都 sudo 失去意义。组关系要重登才生效(或 newgrp docker 临时切)。

例子
sudo usermod -aG docker $USER
newgrp docker
docker ps
image too large

换 slim 基础镜像(alpine / distroless),用多阶段,npm ci --omit=dev,把大目录的 COPY 放最后以保证缓存命中。

常见坑: 每条 RUN 一层 —— `RUN apt update && apt install -y x && rm -rf /var/lib/apt/lists/*` 写一行比拆三条 RUN 小得多。

例子
FROM node:20-alpine
FROM gcr.io/distroless/nodejs20
docker history --no-trunc myapp:latest
container exited with code 137 (OOMKilled)

137 = 128 + SIGKILL(9)。内核 OOM killer 干掉了容器。要么加 --memory,要么修内存泄漏。

常见坑: Docker Desktop 那个 VM 自己有内存上限(老版本默认 2GB,新版 8GB)。Settings > Resources 里改。

例子
docker run -m 1g myapp
docker inspect --format "{{.State.OOMKilled}}" web
docker stats --no-stream web
container exited with code 125 / 126 / 127

125 = docker 自己报错;126 = 命令找到但不可执行;127 = 容器里找不到这个命令。

常见坑: alpine 上常遇到 127 —— 多数发行版有 bash,alpine 只有 sh。要么用 sh,要么装 bash。

例子
docker run --rm alpine sh -c "echo hi"
docker run --rm alpine bash  # exit 127
docker run --rm alpine apk add --no-cache bash
no space left on device

docker 占满了 /var/lib/docker。先 docker system prune,再 docker system df 看剩什么。

常见坑: Docker Desktop 那个盘是稀疏 VM 文件 —— prune 后逻辑空间释放但 .raw 文件不会自动缩。万不得已就 Reset disk image。

例子
docker system df
docker system prune -a --volumes
sudo du -sh /var/lib/docker
address already in use (port conflict)

另一个进程(常是之前的容器)占了宿主端口。lsof -i :<port> 或 docker ps -a 找出来,停掉/删掉。

例子
docker ps -a --filter "publish=8080"
lsof -i :8080
docker rm -f $(docker ps -aq -f "publish=8080")
manifest unknown / image not found

registry 里没这个 tag。检查拼写,用 docker buildx imagetools inspect <image> 或 registry UI 确认。

常见坑: 私有 registry 上也可能是没登录 —— 先 docker login。ARM 机器拉 amd64 only 的镜像也会报这个。

例子
docker buildx imagetools inspect ghcr.io/user/app:v1
docker login ghcr.io
docker pull --platform linux/amd64 myimg
Docker Desktop vs Podman vs nerdctl

三者 CLI 几乎兼容。Desktop 是官方 GUI 套装(大公司收费)。Podman 默认无 daemon、无 root。nerdctl 跟 containerd 一起出。

常见坑: Podman 把 docker 别名指到 podman —— 直到某个工具假设 /var/run/docker.sock 存在就抓瞎。要么 podman system service 起来,要么留 docker。

例子
alias docker=podman
podman system service --time=0 unix:///tmp/podman.sock &
nerdctl run hello-world

这个工具能做什么

可搜索的 docker 速查,覆盖你日常真正会在终端里敲的 80+ 条命令 —— 不是凑数的 hello-world 列表。八大分类:镜像(pull、push、build、 images、rmi、tag、save、load、history、scout、prune、inspect), 容器(run、start、stop、restart、rm、ps、exec、logs、attach、cp、 inspect、stats、top、kill、rename、pause、unpause、commit、diff、 wait、port,以及 -it / -d / --rm / -p / -v / -e / --restart 这些 你天天用却容易记错的标志都单独拆出来讲),网络(create / ls / inspect / connect / disconnect / rm,含“默认 bridge 没 DNS”这个 新手必踩的坑),数据卷(create / ls / inspect / rm / prune 带数据 丢失警告),系统(df / prune / info / version / events / login / logout),Compose V2(up / down / ps / logs / build / restart / exec / run / pull / config / stop,含 docker-compose vs docker compose 弃用提醒),构建技巧(BuildKit、多阶段 Dockerfile、 .dockerignore、--build-arg、--target、--platform、--secret、 --cache-from、buildx),还有“常见错误带解法”章节(连不上 daemon、 permission denied、镜像太大、OOMKilled 退出码 137、退出 125/126/127、 磁盘满、端口冲突、manifest unknown、Docker Desktop vs Podman vs nerdctl)。每条都有完整语法、中英文说明、对应的“常见坑”(比如 `rm vs rmi`、`-it` 拆开讲、`--rm` 是退出时删容器不是删镜像、 `ARG` 值会进 docker history 千万别传密钥、默认 bridge 没 DNS 服务发现),以及 1-4 条能直接拷贝的真实例子。搜索框跨命令/说明/坑 /例子四个字段同时过滤,分类胶囊缩范围,每条命令一键复制。完全在 浏览器里跑,不上传不追踪。配合 Git 速查 + Crontab 助手 一起用, 开发者每周都要 Google 三回的语法都在这里。

工具细节

输入
文件
页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
输出
即时结果 + 复制 + 下载
结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
隐私
浏览器本地处理
主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
保存 / 分享
免账号使用
打开页面即可使用;刷新后是否保留结果取决于具体工具。
性能预算
首屏 JS ≤ 25 KB
没有声明 WASM 依赖,适合快速打开和移动端使用。
适用场景
开发运维 · 程序员
分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。

怎么用

  1. 1. 输入

    把内容粘贴或拖入工具面板。

  2. 2. 处理

    点击按钮,在浏览器内本地处理,文件不上传。

  3. 3. 复制 / 下载

    一键复制结果或下载到本地。

Docker 命令速查 适合怎么用

适合穿插在写代码、查问题、做 Review、上线前的小任务里。

适合开发场景

  • 格式化、校验、压缩或检查和代码相关的文本。
  • 把片段整理好再放进文档、工单、提交或交接材料。
  • 不切换工具,快速检查一个小 payload。

开发检查项

  • 压缩、混淆这类不可逆处理,先对副本操作。
  • 除非确认工具本地处理,不要粘贴密钥和敏感片段。
  • 转换后的代码上线前,仍要跑自己的测试或 lint。

下一步可以接着做

这些入口会把当前任务接到更完整的工具链里。

  1. 1 JSON 格式化与校验 浏览器内即时格式化、校验、压缩 JSON,数据不离开本地。 打开
  2. 2 Git 命令速查 Git 命令速查 —— 可搜可分类,每条带说明、常见坑、真实例子。 打开
  3. 3 正则速查表 交互式正则速查表 —— JS / Python / PCRE 各方言一站查询。 打开

常见问题

类似工具组合

做你这行的人, 还会一起用这些。

Made by Toolora · 100% client-side · Updated 2026-05-29