Docker 常用命令大全

Docker 常用命令大全

Docker 现在开发必备,常用命令一定要熟练。

1. 镜像命令

查看本地镜像:

docker images

搜索镜像:

docker search nginx

拉取镜像:

docker pull nginx:latest

删除镜像:

docker rmi nginx:latest

删除所有镜像:

docker rmi $(docker images -q)

构建镜像:

# 在Dockerfile目录下
docker build -t myapp:1.0 .

2. 容器命令

查看运行中的容器:

docker ps

查看所有容器(包括停止的):

docker ps -a

启动容器:

docker run -d --name mynginx -p 80:80 nginx

参数说明:

  • -d:后台运行
  • --name:容器名
  • -p:端口映射(主机:容器)
  • -v:目录挂载

停止容器:

docker stop mynginx

启动已停止的容器:

docker start mynginx

重启容器:

docker restart mynginx

删除容器:

docker rm mynginx

强制删除运行中的容器:

docker rm -f mynginx

删除所有停止的容器:

docker container prune

3. 进入容器

进入容器命令行:

docker exec -it mynginx /bin/bash

退出容器:

exit

4. 日志查看

查看容器日志:

docker logs mynginx

实时查看日志:

docker logs -f mynginx

查看最近100行日志:

docker logs --tail 100 mynginx

5. 文件操作

从主机复制到容器:

docker cp index.html mynginx:/usr/share/nginx/html/

从容器复制到主机:

docker cp mynginx:/etc/nginx/nginx.conf ./

6. 容器信息

查看容器详情:

docker inspect mynginx

查看容器端口映射:

docker port mynginx

查看容器资源使用:

docker stats

7. 数据卷

创建数据卷:

docker volume create mydata

查看数据卷:

docker volume ls

使用数据卷:

docker run -d -v mydata:/data nginx

8. 网络

查看网络:

docker network ls

创建网络:

docker network create mynet

容器加入网络:

docker network connect mynet mynginx

9. 其他常用

查看Docker版本:

docker version

查看Docker信息:

docker info

清理无用资源:

docker system prune

10. 常用组合

启动一个PHP环境:

docker run -d --name php \
  -p 8080:80 \
  -v /www:/var/www/html \
  php:apache

启动MySQL:

docker run -d --name mysql \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /data/mysql:/var/lib/mysql \
  mysql:5.7

启动Redis:

docker run -d --name redis \
  -p 6379:6379 \
  redis:latest

总结

Docker 常用命令要点:

  • docker images 看镜像
  • docker ps 看容器
  • docker run 启动容器
  • docker exec 进入容器
  • docker logs 看日志
  • docker cp 复制文件
  • docker stats 看资源
  • -d 后台运行
  • -p 端口映射
  • -v 目录挂载

Docker 命令熟练了,开发部署效率提升很多。


emer 发布于  2026-10-9 07:33 

Docker 镜像加速配置

Docker 镜像加速配置

国内拉取 Docker 镜像很慢,配置镜像加速器很有必要。

1. 为什么要加速

Docker Hub 在国外,国内拉镜像经常超时,配置加速器能快很多。

2. 配置方法

Linux(CentOS/Ubuntu):

编辑配置文件:

mkdir -p /etc/docker
vi /etc/docker/daemon.json

写入内容:

{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com"
  ]
}

重启生效:

systemctl daemon-reload
systemctl restart docker

3. 常用加速器

# 中科大
https://docker.mirrors.ustc.edu.cn

# 网易
https://hub-mirror.c.163.com

# 阿里(需要自己的地址)
https://xxxx.mirror.aliyuncs.com

4. 验证是否生效

docker info

看到 Registry Mirrors 下面有地址就说明成功了。

5. 常见问题

1)拉取还是很慢:

  • 换个加速器试试
  • 网络问题

2)配置不生效:

  • 检查 json 格式对不对
  • 重启 docker

3)企业内网:

  • 可以自己搭建私有镜像仓库
  • 或者用阿里云私有镜像服务

6. 常用镜像源

# 官方
docker pull nginx
docker pull mysql
docker pull redis

# 指定版本
docker pull nginx:1.25
docker pull mysql:8.0

总结

Docker 镜像加速核心:

  • 配置 daemon.json
  • 用国内加速器地址
  • 重启 docker 生效
  • docker info 验证

做运维开发,Docker 镜像加速是第一步。


emer 发布于  2026-10-8 07:11 

Docker 常用命令汇总

Docker 常用命令汇总

Docker 现在是开发必备工具,整理一份常用命令清单,记不住随时翻。

1. 镜像管理

# 查看本地镜像
docker images

# 搜索镜像
docker search nginx

# 拉取镜像
docker pull nginx:latest

# 删除镜像
docker rmi nginx:latest

# 导出镜像
docker save -o nginx.tar nginx:latest

# 导入镜像
docker load -i nginx.tar

2. 容器管理

# 查看运行中的容器
docker ps

# 查看所有容器(包括停止的)
docker ps -a

# 启动容器
docker start nginx

# 停止容器
docker stop nginx

# 重启容器
docker restart nginx

# 删除容器
docker rm nginx

# 强制删除运行中的容器
docker rm -f nginx

3. 运行容器

# 后台运行 nginx
docker run -d --name mynginx -p 80:80 nginx

# 参数说明:
# -d:后台运行
# --name:容器名
# -p:端口映射(主机:容器)
# -v:目录挂载(主机:容器)

# 进入容器内部
docker exec -it mynginx bash

# 查看容器日志
docker logs mynginx

# 实时查看日志
docker logs -f mynginx

4. 查看容器信息

# 查看容器详细信息
docker inspect mynginx

# 查看容器占用资源
docker stats

# 查看容器端口映射
docker port mynginx

5. 数据卷

# 创建数据卷
docker volume create mydata

# 查看所有数据卷
docker volume ls

# 挂载数据卷运行容器
docker run -d -v mydata:/data nginx

# 删除数据卷
docker volume rm mydata

6. Docker Compose

# 启动服务
docker-compose up -d

# 停止服务
docker-compose down

# 查看服务状态
docker-compose ps

# 查看日志
docker-compose logs -f

docker-compose.yml 示例:

version: '3'
services:
  nginx:
    image: nginx
    ports:
      - "80:80"
    volumes:
      - ./html:/usr/share/nginx/html

7. 清理命令

# 删除所有停止的容器
docker container prune

# 删除所有无用镜像
docker image prune -a

# 删除所有无用数据卷
docker volume prune

# 一键清理所有无用资源
docker system prune -a

总结

Docker 常用命令就这几类:

  • 镜像: pull / images / rmi
  • 容器: run / ps / stop / rm / exec
  • 日志: logs / stats
  • Compose: up / down

日常开发把这些命令用熟就够了,不用背,多敲几次自然记住。


emer 发布于  2026-10-7 07:12 

Docker Compose 实战

Docker Compose 一键部署多容器

Docker Compose 可以用一个 YAML 文件定义和运行多个 Docker 容器,开发环境部署特别方便。

1. 基本结构

version: '3'
services:
  web:
    image: nginx
    ports:
      - "80:80"
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: 123456

2. 常用命令

# 启动所有服务
docker-compose up -d

# 查看服务状态
docker-compose ps

# 查看日志
docker-compose logs -f

# 停止并删除容器
docker-compose down

# 重启某个服务
docker-compose restart web

3. PHP 开发环境示例

version: '3'
services:
  php:
    build: .
    ports:
      - "8000:80"
    volumes:
      - ./:/var/www/html
    depends_on:
      - mysql
      - redis

  mysql:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: root
    volumes:
      - mysql_data:/var/lib/mysql

  redis:
    image: redis:alpine

volumes:
  mysql_data:

4. 数据卷

数据卷用来持久化数据,容器删了数据还在:

volumes:
  - ./data:/var/lib/mysql

5. 网络

默认同一 Compose 里的服务在同一个网络,可以直接用服务名互相访问。比如 PHP 容器里连数据库用 mysql:3306,不用写 IP。

总结

Docker Compose 适合本地开发和测试环境。生产环境部署建议用 K8s 或者更专业的编排工具。


emer 发布于  2026-10-4 10:32 
'); })();