Docker 是一种轻量级的容器化技术,用于快速构建、部署和运行应用程序。以下是 Docker 的基本使用方法和常用命令:
一、Docker 的核心概念
1. 镜像(Image)
- 一个只读模板,包含运行应用程序所需的所有文件、依赖和配置。
- 例如:nginx、mysql、ubuntu 等。
2. 容器(Container)
- 镜像的运行实例,是一个独立的、轻量级的虚拟环境。
- 容器之间相互隔离,共享主机操作系统内核。
3. 仓库(Repository)
- 用于存储和分发镜像的地方,例如 Docker Hub(https://hub.docker.com/)。
二、Docker 的安装
1. 在 Linux 上安装
bash
更新包管理器
sudo apt-get update
安装 Docker
sudo apt-get install docker.io
启动 Docker 服务
sudo systemctl start docker
设置开机自启
sudo systemctl enable docker
2. 在 Windows/Mac 上安装
- 下载 Docker Desktop 安装包(https://www.docker.com/products/docker-desktop)。
- 安装后,启动 Docker Desktop 即可。
三、Docker 的基本使用
1. 拉取镜像
从 Docker Hub 拉取镜像到本地:
bash
docker pull <镜像名>:<标签>
例如:
bash
docker pull nginx:latest
2. 查看本地镜像
列出本地已下载的镜像:
bash
docker images
3. 运行容器
基于镜像创建并启动容器:
bash
docker run [选项] <镜像名>:<标签>
常用选项:
-d:后台运行(守护模式)。
-p <主机端口>:<容器端口>:端口映射。
--name <容器名>:为容器指定名称。
-v <主机目录>:<容器目录>:挂载数据卷。
例如:
bash
docker run -d -p 80:80 --name my-nginx nginx:latest
4. 查看运行中的容器
列出正在运行的容器:
bash
docker ps
查看所有容器(包括已停止的):
bash
docker ps -a
5. 停止容器
停止运行中的容器:
bash
docker stop <容器ID或容器名>
6. 启动已停止的容器
启动已停止的容器:
bash
docker start <容器ID或容器名>
7. 进入容器
进入运行中的容器执行命令:
bash
docker exec -it <容器ID或容器名> /bin/bash
8. 删除容器
删除已停止的容器:
bash
docker rm <容器ID或容器名>
9. 删除镜像
删除本地镜像:
bash
docker rmi <镜像ID或镜像名>
四、Docker 的高级用法
1. 构建自定义镜像
1. 创建 Dockerfile 文件,定义镜像构建步骤:
Dockerfile
FROM ubuntu:latest
RUN apt-get update && apt-get install -y nginx
CMD ["nginx", "-g", "daemon off;"]
2. 构建镜像:
bash
docker build -t my-nginx:latest .
2. 数据卷管理
1. 创建数据卷:
bash
docker volume create my-volume
2. 使用数据卷:
bash
docker run -v my-volume:/app nginx:latest
3. 网络管理
1. 创建自定义网络:
bash
docker network create my-network
2. 使用自定义网络:
bash
docker run --network my-network nginx:latest
4. 容器日志
查看容器日志:
bash
docker logs <容器ID或容器名>
五、Docker 的常用命令总结
| 命令 | 功能描述 |
| docker pull <镜像名> | 拉取镜像 |
| docker images | 查看本地镜像 |
| docker run <镜像名> | 运行容器 |
| docker ps | 查看运行中的容器 |
| docker stop <容器ID> | 停止容器 |
| docker start <容器ID> | 启动容器 |
| docker exec -it <容器ID> bash | 进入容器 |
| docker rm <容器ID> | 删除容器 |
| docker rmi <镜像ID> | 删除镜像 |
| docker build -t <镜像名> . | 构建自定义镜像 |
| docker logs <容器ID> | 查看容器日志 |
六、学习资源
- 官方文档:https://docs.docker.com/
- Docker Hub:https://hub.docker.com/
- Docker 社区:https://forums.docker.com/
总结
Docker 提供了一种高效、轻量级的应用部署方式,通过镜像和容器的概念,简化了开发、测试和运维流程。从拉取镜像、运行容器开始,逐步掌握构建镜像、管理数据卷和网络等高级功能,可以更好地利用 Docker 提升工作效率。