简介
本全面的 Docker 教程为开发者和系统管理员提供了实施容器技术所需的基本知识。通过涵盖基本的 Docker 概念、安装过程和实际示例,学习者将获得现代软件部署和虚拟化技术方面的实用技能。
本全面的 Docker 教程为开发者和系统管理员提供了实施容器技术所需的基本知识。通过涵盖基本的 Docker 概念、安装过程和实际示例,学习者将获得现代软件部署和虚拟化技术方面的实用技能。
Docker 是一项强大的容器技术,它彻底改变了软件部署和应用程序虚拟化。它使开发者能够将应用程序及其所有依赖项打包成称为容器的标准化单元。
概念 | 描述 |
---|---|
Docker 镜像 | 轻量级、独立的可执行包 |
容器 | 镜像的可运行实例 |
Dockerfile | 定义镜像配置的脚本 |
容器通过共享主机系统的内核来提供轻量级虚拟化,同时保持应用程序隔离。这种方法与传统虚拟机不同。
## 更新软件包索引
sudo apt update
## 安装依赖项
sudo apt install apt-transport-https ca-certificates curl software-properties-common
## 添加 Docker GPG 密钥
curl -fsSL | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
## 设置仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
## 安装 Docker 引擎
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
## 拉取 Ubuntu 镜像
docker pull ubuntu:latest
## 运行交互式容器
docker run -it ubuntu:latest /bin/bash
## 在容器内部
apt update
apt install nginx -y
exit
要求 | 规格 |
---|---|
操作系统 | Ubuntu 22.04 LTS |
架构 | 64 位 |
内核 | 5.10+ |
内存 | 至少 2GB |
## 更新系统软件包
sudo apt update && sudo apt upgrade -y
## 移除冲突的软件包
sudo apt remove docker docker-engine docker.io containerd runc
## 安装所需的依赖项
sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
## 添加 Docker 官方 GPG 密钥
curl -fsSL | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
## 设置稳定仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
## 安装 Docker 引擎
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
## 验证安装
sudo docker --version
## 创建 docker 用户组
sudo groupadd docker
## 将当前用户添加到 docker 组
sudo usermod -aG docker $USER
## 启用 Docker 服务
sudo systemctl enable docker.service
sudo systemctl start docker.service
## 验证 docker 功能
docker run hello-world
## 下载 Docker Compose
sudo curl -L " -s)-$(uname -m)" -o /usr/local/bin/docker-compose
## 赋予可执行权限
sudo chmod +x /usr/local/bin/docker-compose
## 验证安装
docker-compose --version
命令 | 功能 |
---|---|
docker run | 创建并启动容器 |
docker ps | 列出正在运行的容器 |
docker stop | 停止正在运行的容器 |
docker rm | 移除容器 |
docker exec | 在容器内执行命令 |
## 拉取 Ubuntu 镜像
docker pull ubuntu:latest
## 运行交互式容器
docker run -it --name my-ubuntu ubuntu:latest /bin/bash
## 列出所有容器
docker ps -a
## 启动已停止的容器
docker start my-ubuntu
## 停止正在运行的容器
docker stop my-ubuntu
## 移除容器
docker rm my-ubuntu
## 在后台运行容器
docker run -d --name nginx-server nginx:latest
## 将容器端口映射到主机
docker run -p 8080:80 -d nginx:latest
## 检查容器详细信息
docker inspect nginx-server
## 查看容器日志
docker logs nginx-server
## 在正在运行的容器内执行命令
docker exec -it nginx-server bash
## 限制容器资源
docker run -d \
--name limited-container \
--cpus="1" \
--memory="512m" \
nginx:latest
## 监控容器资源使用情况
docker stats
## 创建自定义网络
docker network create my-network
## 在特定网络中运行容器
docker run --network=my-network -d nginx:latest
Docker 代表了一种革命性的软件部署方法,它提供轻量级、可移植的容器,简化了应用程序开发和基础设施管理。通过掌握 Docker 的核心原理、安装过程和容器管理技术,专业人员可以在各种计算环境中显著提升他们的软件开发和部署能力。