Docker 使用教程:从安装到实践
Docker 使用教程:从安装到实践
Docker 是一款开源的容器化平台,它能够帮助开发者打包、发布和运行应用程序。通过 Docker,我们可以将应用程序及其所有依赖项封装在一个独立的容器中,使其可以在任何环境中一致地运行。本教程将详细介绍 Docker 的安装和基础使用,帮助你快速上手。
一、Docker 安装
Docker 支持多种操作系统,如 Linux、macOS 和 Windows。接下来,我们分操作系统讲解如何安装 Docker。
1.1 在 Linux 上安装 Docker
步骤 1:更新系统软件包
打开终端,输入以下命令来更新系统包管理器:
sudo apt-get update
步骤 2:安装必要的依赖
运行以下命令以安装所需的包:
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
步骤 3:添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
步骤 4:添加 Docker 仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
步骤 5:安装 Docker
更新包列表并安装 Docker:
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
步骤 6:启动 Docker 服务
sudo systemctl start docker
sudo systemctl enable docker
步骤 7:验证安装是否成功
sudo docker --version
如果成功安装,终端将返回 Docker 版本信息。
1.2 在 macOS 上安装 Docker
在 macOS 上,安装 Docker 可以通过 Docker Desktop 应用程序进行。以下是具体步骤:
步骤 1:下载 Docker Desktop
访问 Docker 官网 下载适用于 macOS 的 Docker Desktop。
步骤 2:安装 Docker Desktop
下载完成后,打开安装包并按照提示拖动 Docker 图标到“应用程序”文件夹中。
步骤 3:启动 Docker
在应用程序文件夹中找到 Docker 并启动。在 Docker 启动时,顶部菜单栏会显示一个 Docker 图标,表示 Docker 已经成功运行。
步骤 4:验证安装是否成功
打开终端,运行以下命令:
docker --version
如果返回 Docker 版本信息,则安装成功。
1.3 在 Windows 上安装 Docker
在 Windows 上,Docker Desktop 是最方便的安装方式。
步骤 1:下载 Docker Desktop
访问 Docker 官网 下载适用于 Windows 的 Docker Desktop。
步骤 2:安装 Docker Desktop
下载后运行安装程序,并按照提示完成安装。在安装过程中,Docker Desktop 会要求启用 WSL 2(Windows Subsystem for Linux 2),确保勾选相关选项。
步骤 3:启动 Docker
安装完成后,启动 Docker Desktop。首次启动可能会要求进行一些配置,按照提示完成即可。
步骤 4:验证安装是否成功
打开 PowerShell 或 CMD,运行以下命令:
docker --version
如果输出 Docker 版本信息,说明安装成功。
二、Docker 基础使用
Docker 安装完成后,我们可以开始使用 Docker 的核心功能。以下是一些常用的 Docker 命令和示例,帮助你快速上手。
2.1 运行第一个 Docker 容器
我们将运行一个简单的 Hello World 容器,这是验证 Docker 是否正常工作的好方法。
docker run hello-world
运行后,Docker 将从 Docker Hub 拉取 hello-world
镜像,创建一个容器并运行它。你应该会看到类似以下的输出:
Hello from Docker!
This message shows that your installation appears to be working correctly.
2.2 Docker 基本命令
1. 拉取镜像
Docker Hub 是一个存储和共享 Docker 镜像的中心。你可以从 Docker Hub 上拉取镜像:
docker pull <镜像名>
例如,拉取官方的 nginx
镜像:
docker pull nginx
2. 列出镜像
列出本地存储的所有 Docker 镜像:
docker images
3. 运行容器
使用镜像运行容器:
docker run <镜像名>
例如,运行一个 nginx 容器:
docker run -d -p 8080:80 nginx
-d
表示后台运行容器,-p 8080:80
表示将宿主机的 8080 端口映射到容器内的 80 端口。
你可以在浏览器中访问 http://localhost:8080
,看到 Nginx 欢迎页面。
4. 列出正在运行的容器
查看当前运行的容器:
docker ps
5. 停止容器
停止运行中的容器:
docker stop <容器ID或名称>
例如,停止 Nginx 容器:
docker stop <container_id>
6. 删除容器
删除一个停止的容器:
docker rm <容器ID或名称>
7. 删除镜像
删除一个镜像:
docker rmi <镜像ID或名称>
2.3 Dockerfile 简介
Dockerfile 是用于构建自定义镜像的文件,包含了镜像构建的所有步骤。以下是一个简单的 Dockerfile 示例:
# 使用官方的 Python 镜像作为基础
FROM python:3.8-slim
# 设置工作目录
WORKDIR /app
# 复制当前目录下的所有文件到容器的 /app 目录
COPY . /app
# 安装依赖
RUN pip install --no-cache-dir -r requirements.txt
# 设置启动命令
CMD ["python", "app.py"]
使用 Dockerfile 构建镜像
在包含 Dockerfile 的目录下,运行以下命令来构建镜像:
docker build -t my-python-app .
-t my-python-app
为镜像命名,.
表示 Dockerfile 所在的当前目录。
构建成功后,使用以下命令运行镜像生成的容器:
docker run my-python-app
2.4 Docker Compose 简介
Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。你可以使用 docker-compose.yml
文件来配置服务,并通过一个命令启动这些服务。
Docker Compose 示例
以下是一个简单的 docker-compose.yml
示例,定义了一个运行 Nginx 和 Redis 的应用:
version: '3'
services:
web:
image: nginx
ports:
- "8080:80"
redis:
image: redis
使用以下命令启动所有服务:
docker-compose up
使用 Ctrl+C
可以停止服务,使用 docker-compose down
完全关闭并移除容器。
三、总结
通过本教程,你已经掌握了从 Docker 安装到运行第一个容器的基本流程,以及 Docker 的核心命令和工具如 Dockerfile 和 Docker Compose。Docker 作为现代开发环境中重要的一部分,可以极大提高应用的可移植性和一致性。掌握 Docker,能够帮助你更轻松地管理开发、测试和生产环境中的应用程序。
Docker 的世界非常广阔,未来你可以探索更多高级功能,如 Docker 网络、数据卷、容器编排等。希望本教程能为你打开 Docker 的大门,开始你的容器化之旅!