Docker 简介
Docker 是一个开源的容器化平台,用于开发、部署和运行应用程序。它通过容器技术将应用及其依赖项打包到一个可移植的标准化单元中,确保应用在不同环境中高效运行。
核心特点
| 特点 | 说明 |
|---|
| 轻量级 | 容器共享宿主机的操作系统内核,相比传统虚拟机更节省资源 |
| 可移植性 | 容器可在任何支持 Docker 的环境中运行,确保一致性 |
| 隔离性 | 每个容器独立运行,互不干扰,提高安全性 |
| 快速部署 | 秒级启动和停止,适合动态扩展和微服务架构 |
| 版本控制 | 支持镜像分层存储和版本管理,便于回滚和更新 |
主要应用场景
| 场景 | 说明 |
|---|
| 微服务架构 | 将单体应用拆分为多个独立容器,提高可维护性 |
| 持续集成/持续部署 (CI/CD) | 自动化构建、测试和发布流程 |
| 开发环境标准化 | 避免'在我机器上能运行'的问题,统一开发、测试和生产环境 |
| 云原生应用 | 与 Kubernetes 等编排工具结合,实现弹性伸缩和高可用 |
| 快速实验与测试 | 快速创建一次性环境,测试新技术或配置 |
优势
| 优势 | 说明 |
|---|
| 资源高效 | 相比虚拟机,容器占用更少 CPU 和内存 |
| 跨平台支持 | 可在 Linux、Windows 和 macOS 上运行 |
| 丰富的生态系统 | 提供 Docker Hub 等镜像仓库,方便共享和获取预构建镜像 |
| 简化运维 | 通过 Dockerfile 定义环境,减少手动配置错误 |
Linux 安装与配置
1. 安装前准备
1.1 系统要求检查
uname -r
lsb_release -a
uname -r
cat /etc/redhat-release
1.2 卸载旧版本 Docker
如果之前安装过 Docker,需要先卸载旧的版本。
sudo apt-get remove docker docker-engine docker.io containerd runc
sudo yum remove -y docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine