引言
一、什么是 Docker?
1.1 Docker 的概念
Docker 是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖打包成一个轻量级的、可移植的容器。容器可以在任何支持 Docker 的平台上运行,确保了开发、测试和生产环境的一致性。
1.2 Docker 的优势
- 轻量级:相比虚拟机,Docker 容器占用资源更少,启动速度更快。
- 可移植性:一次构建,随处运行。Docker 容器可以在开发、测试和生产环境中保持一致。
- 简化部署:通过容器化,可以将复杂的部署过程简化为拉取和运行容器镜像。
二、Docker 的安装与环境配置
2.1 安装 Docker
在 Linux(如 Ubuntu)上安装 Docker 的步骤如下:
更新软件包索引:
sudo apt-get update
安装必要的依赖:
sudo apt-get install ca-certificates curl gnupg lsb-release
添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
设置稳定存储库:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
更新存储库:
sudo apt-get update
安装 Docker:
sudo apt-get install docker-ce docker-ce-cli containerd.io
验证安装:
docker --version
2.2 验证 Docker 安装
通过运行以下命令验证 Docker 是否已成功安装:
docker run hello-world
如果一切正常,您将看到以下输出:
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker daemon started.
2. The container runtime started.
3. Hello World image was loaded.
4. An interactive container was started.
三、Docker 的基本使用
3.1 拉取并运行镜像
要运行一个容器,首先需要从 Docker Hub 或其他镜像仓库拉取一个镜像。以下是一个示例:
docker pull ubuntu:latest
然后,您可以使用以下命令运行该镜像:
docker run -it ubuntu bash
这将启动一个 Ubuntu 容器,并进入 bash 会话。
3.2 常用 Docker 命令
以下是一些常用的 Docker 命令:
docker ps
:列出当前运行的容器。docker images
:列出本地镜像。docker run
:运行一个新的容器。docker stop
:停止一个容器。docker rm
:删除一个容器。docker rmi
:删除一个镜像。
3.3 Docker 的工作流程
Docker 的工作流程主要包括以下步骤:
- 拉取镜像。
- 创建容器。
- 运行容器。
- 管理容器(如启动、停止、删除等)。
四、Dockerfile 的构建与解释
4.1 构建 Docker 镜像
Dockerfile 是一个包含一系列指令的文本文件,用于构建 Docker 镜像。以下是一个简单的 Dockerfile 示例:
FROM ubuntu:latest
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
这个 Dockerfile 基于最新的 Ubuntu 镜像,安装 Nginx,并暴露 80 端口。
4.2 运行 Docker 容器
要使用 Dockerfile 构建镜像并运行容器,请按照以下步骤操作:
- 保存 Dockerfile。
- 在 Dockerfile 所在目录中运行以下命令构建镜像:
docker build -t my-nginx .
- 运行容器:
docker run -d -p 8080:80 my-nginx