Docker 作为一种轻量级的容器化技术,在软件开发、测试和部署等环节发挥着关键作用。它通过将应用程序及其依赖打包成独立的容器,实现了应用的快速部署和资源的高效利用。本文将详细介绍 Docker 最常用的 19 个命令,帮助读者更好地掌握 Docker 的使用。
docker images
# 显示镜像名称、标签、大小等信息
docker pull nginx:latest # 下载最新版Nginx
docker pull python:3.9 # 指定版本下载
docker rmi nginx # 删除指定镜像
docker rmi $(docker images -q) # 删除所有镜像(谨慎使用!)
docker build -t myapp:1.0 . # -t指定镜像名,末尾点表示当前目录
docker ps # 显示容器ID、状态、端口映射等
docker ps -a # 显示完整容器生命周期
docker run -d -p 8080:80 --name my_nginx nginx
# -d: 后台运行
# -p: 端口映射(主机:容器)
# --name: 指定容器名
docker exec -it my_nginx bash # 进入容器终端
docker exec my_nginx ls /app # 执行单条命令
docker logs my_nginx # 查看最新日志
docker logs -f my_nginx # 实时追踪日志(类似tail -f)
docker stop my_nginx # 停止容器
docker start my_nginx # 启动已停止的容器
docker restart my_nginx # 重启容器
docker rm my_nginx # 删除已停止的容器
docker rm -f my_nginx # 强制删除运行中的容器
docker container prune # 清理所有停止的容器
docker volume create db_data # 创建名为db_data的卷
docker volume ls # 查看卷列表
docker network ls # 显示所有网络
docker network inspect bridge # 查看网络详情
docker save -o nginx.tar nginx # -o 指定输出文件
docker load -i nginx.tar # -i 指定输入文件
docker export my_nginx > container.tar
cat container.tar | docker import - my_image:v1
命令组合 | 适用场景 | 是否保留元数据 |
---|---|---|
save + load |
完整镜像迁移(含历史层) | ✅ 是 |
export + import |
容器快照迁移(扁平化文件系统) | ❌ 否 |
国内用户拉取官方镜像时可能速度较慢,通过配置镜像加速器可极大提升下载速度。国内好用的镜像源(https://docker.1ms.run):
# 创建Docker配置目录
sudo mkdir -p /etc/docker
# 添加国内镜像源(推荐组合使用)
sudo tee /etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://docker.1ms.run",
"https://docker.anyhub.us.kg",
"https://dockerhub.jobcher.com",
"https://dockerhub.icu"
]
}
EOF
# 重载配置并重启服务
sudo systemctl daemon-reload
sudo systemctl restart docker
docker pull docker.1ms.run/library/mysql
实测效果:配置前后下载速度对比
❌ 未加速:300KB/s ~ 800KB/s
✅ 加速后:8MB/s ~ 30MB/s
镜像源提供商 | 地址 | 稳定性 |
---|---|---|
毫秒镜像 | https://docker.1ms.run |
免费、支持搜索、配置简单、免费技术解答、集成多方主流生态 |
腾讯云 | https://mirror.ccs.tencentyun.com |
仅腾讯云服务器内部可用 |
DaoCloud 官方 | https://docker.m.daocloud.io |
白名单 & 限流 |
耗子面板官方 | https://hub.rat.dev |
部分地区可能无法访问 |
# 原来:docker pull nginx:latest (可能很慢或超时)
# 现在:使用毫秒镜像加速
docker pull docker.1ms.run/nginx:latest
将
nginx:latest
替换成你需要的任何镜像和版本
alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"'
docker system prune -a --volumes # 清理镜像+容器+数据卷
docker stats # 实时监控容器CPU/内存
通过合理配置镜像加速,可使镜像拉取速度提升10-50倍,极大优化容器操作体验!