本文翻译自我的英文博客,最新修订内容可随时参考:Docker命令速查表
systemctl start docker # 启动Docker服务
systemctl stop docker # 停止Docker服务
systemctl restart docker # 重启Docker服务
systemctl status docker # 查看服务状态
systemctl enable docker # 设置开机自启
docker info # 查看Docker系统信息(版本、存储驱动、容器/镜像数量等)
docker system df # 查看磁盘占用(镜像、容器、卷的空间使用情况)
命令 | 说明 |
---|---|
| 列出本地所有镜像 |
| 拉取指定版本的Ubuntu镜像( |
| 查看镜像详细元数据(分层、作者、环境变量等) |
| 删除指定镜像( |
docker tag my-image:v1 timerring/my-image:v1 # 重命名镜像并添加仓库前缀
docker images -f dangling=true # 查看悬空镜像(无标签的旧版本镜像)
docker rmi $(docker images -q -f dangling=true) # 批量删除悬空镜像
docker login -u timerring # 登录Docker Hub
docker search nginx # 搜索官方镜像(`--filter stars=3`按星级过滤)
docker tag my-app:v1 timerring/my-app:v1 # 添加仓库前缀
docker push timerring/my-app:v1 # 推送镜像到Docker Hub
命令 | 说明 |
---|---|
| 拉取并运行容器( |
| 列出运行中容器( |
| 启停/重启容器 |
| 删除容器( |
docker run -p 8080:80 -v /data:/app/data --name web-server nginx:alpine # 映射端口+挂载卷
docker attach my-container # 进入容器终端(`Ctrl+P + Ctrl+Q`退出但不停止容器)
docker exec -it my-container bash # 在运行的容器中执行命令(推荐方式)
docker logs -f my-container # 实时查看容器日志(`--tail 100`显示最后100行)
docker top my-container # 查看容器内运行的进程
docker cp host-file.txt my-container:/app/ # 复制文件到容器
docker commit my-container my-image:v2 # 将容器状态保存为新镜像(不推荐用于构建,仅作快照)
docker container prune # 删除所有已停止的容器
docker system prune -a # 清理所有无用镜像、容器、卷(谨慎使用!)
docker volume create my-vol # 创建命名卷
docker volume ls # 列出所有卷
docker volume inspect my-vol # 查看卷详情(存储路径、驱动等)
docker volume rm my-vol # 删除卷
docker run --mount source=my-vol,target=/app/data nginx # 挂载命名卷到容器路径
docker run -v /host/path:/container/path:ro nginx # 挂载主机目录(`:ro`设为只读)
docker run --volumes-from my-container --name web2 nginx # 复用已有容器的卷配置
docker run -p 80:80 -p 443:443 nginx # 映射宿主机端口到容器端口(宿主机:容器)
docker port my-container 80 # 查看容器端口映射情况
docker run --network host nginx # 使用宿主机网络(容器直接暴露端口,无需映射)
docker network create my-net # 创建自定义网络(用于容器间通信)
docker run --network my-net --name web1 nginx
docker run --network my-net --name web2 nginx # 同一网络内容器可通过容器名直接通信
docker run --memory 2g --cpu-shares 512 my-app # 限制容器内存为2GB,CPU权重512
docker update my-container --memory 4g # 动态调整运行中容器的资源限制
FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "app.py"]
构建命令:
docker build -t my-python-app:v1 . # `-f`指定Dockerfile路径,`--no-cache`禁用缓存
FROM golang:1.20 as builder
WORKDIR /app
COPY . .
RUN go build -o my-app
FROM alpine:3.17
COPY --from=builder /app/my-app /usr/bin/my-app
CMD ["my-app"]
Ctrl+P + Ctrl+Q
exit
docker kill my-container
掌握以上命令即可覆盖80%的日常Docker操作。建议结合实际场景练习,例如:
docker run -p 80:80 nginx
快速启动一个Web服务器。 docker exec
进入容器修改配置,再用docker commit
制作自定义镜像。 如需深入学习Docker Compose或Kubernetes集群管理,欢迎访问博客获取更多资源:Docker命令速查表。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。