Docker 作为一种轻量级的容器化技术,在软件开发、测试和部署等环节发挥着关键作用。它通过将应用程序及其依赖打包成独立的容器,实现了应用的快速部署和资源的高效利用。本文将详细介绍 Docker 最常用的 19 个命令,帮助读者更好地掌握 Docker 的使用。

️一、镜像管理(Image Management)

1.docker images(查看本地所有镜像)

1. docker images 
# 显示镜像名称、标签、大小等信息

2.docker pull(从远程仓库拉取镜像)

docker pull nginx:latest  # 下载最新版Nginx
docker pull python:3.9   # 指定版本下载

3.docker rmi(删除本地镜像)

docker rmi nginx          # 删除指定镜像
docker rmi $(docker images -q)  # 删除所有镜像(谨慎使用!)

4.docker build(根据 Dockerfile 构建镜像)

docker build -t myapp:1.0 .  # -t指定镜像名,末尾点表示当前目录

二、容器管理(Container Management)

5.docker ps(查看正在运行的容器)

docker ps          # 显示容器ID、状态、端口映射等

6.docker ps -a(查看所有容器<包括已停止的>)

docker ps -a       # 显示完整容器生命周期

7.docker run(启动新容器<最核心命令>)

docker run -d -p 8080:80 --name my_nginx nginx
# -d: 后台运行 
# -p: 端口映射(主机:容器)
# --name: 指定容器名

8.docker exec(在运行中的容器内执行命令)

docker exec -it my_nginx bash  # 进入容器终端
docker exec my_nginx ls /app   # 执行单条命令

9.docker logs(查看容器日志)

docker logs my_nginx    # 查看最新日志
docker logs -f my_nginx # 实时追踪日志(类似tail -f)

10.docker stop/start/restart(容器生命周期管理)

docker stop my_nginx    # 停止容器
docker start my_nginx   # 启动已停止的容器
docker restart my_nginx # 重启容器

11.docker rm(删除容器)

docker rm my_nginx           # 删除已停止的容器
docker rm -f my_nginx        # 强制删除运行中的容器
docker container prune       # 清理所有停止的容器

三、数据卷与网络(Volume & Network)

12.docker volume create(创建持久化数据卷)

docker volume create db_data  # 创建名为db_data的卷

13.docker volume ls(列出所有数据卷)

docker volume ls  # 查看卷列表

14.docker network ls(查看Docker网络)

docker network ls        # 显示所有网络
docker network inspect bridge  # 查看网络详情

镜像打包与导入导出(Image Transfer)

15.docker save(将镜像保存为 "tar 包")

docker save -o nginx.tar nginx  # -o 指定输出文件

16.docker load(从 tar 包导入镜像)

docker load -i nginx.tar  # -i 指定输入文件

17.docker export (导出容器文件系统<非镜像格式>)

docker export my_nginx > container.tar

18.docker import(导入容器为镜像)

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

常用镜像源推荐:

镜像源提供商地址特点
毫秒镜像docker.1ms.run免费、支持搜索、配置简单、免费技术解答、集成多方主流生态
腾讯云mirror.ccs.tencentyun.com仅腾讯云服务器内部可用
DaoCloud 官方docker.m.daocloud.io白名单 & 限流
耗子面板官方hub.rat.dev部分地区可能无法访问

高效使用技巧

  1. 临时使用镜像源 (无需修改配置):

    # 原来:docker pull nginx:latest (可能很慢或超时) 
     # 现在:使用毫秒镜像加速 
     docker pull docker.1ms.run/nginx:latest
nginx:latest 替换成你需要的任何镜像和版本
  1. 别名简化命令

    alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"'
  2. **容器镜像双清理:

    docker system prune -a --volumes  # 清理镜像+容器+数据卷
  3. 查看资源占用

    docker stats  # 实时监控容器CPU/内存
通过合理配置镜像加速,可使镜像拉取速度提升10-50倍,极大优化容器操作体验!

标签: VPS, Linux命令大全

评论已关闭