当前位置: 首页 > article >正文

Docker 安装全平台详细教程

### Docker 安装全平台详细教程

Docker 是一个轻量级的容器化工具,用于开发、部署和运行应用程序。本文将为您详细介绍如何在 Windows、macOS 和 Linux 上安装 Docker,并验证其功能。

---

## **一、安装前的准备工作**

### **操作系统要求**
1. **Windows**: Windows 10 或更高版本(需启用 WSL 2)。
2. **macOS**: macOS Catalina (10.15) 或更高版本。
3. **Linux**: 支持主流发行版(如 Ubuntu、CentOS、Debian 等)。

### **硬件要求**
1. 至少 4GB 内存。
2. CPU 支持虚拟化(如 VT-x 或 AMD-V),并在 BIOS 中启用。

---

## **二、Docker 安装步骤**

### **1. 在 Windows 上安装 Docker**

#### 1.1 下载 Docker Desktop
1. 前往 [Docker 官方下载页面](https://www.docker.com/products/docker-desktop/)。
2. 点击 **Get Docker**,选择 Windows 版本。

#### 1.2 安装 Docker Desktop
1. 下载完成后,双击安装文件 `Docker Desktop Installer.exe`。
2. 按照安装向导完成安装,确保启用 **Enable WSL 2 Features**。
3. 如果提示安装 WSL 2 内核,按照链接指引下载并安装。

#### 1.3 启动 Docker Desktop
1. 安装完成后,运行 Docker Desktop。
2. 登录 Docker Hub 账号(如果没有,可以在 [Docker Hub](https://hub.docker.com/) 注册)。
3. 确认 Docker Desktop 状态为 **Running**。

#### 1.4 验证 Docker 安装
打开 PowerShell 或命令提示符,输入:
```bash
docker --version
```
**输出示例**:
```
Docker version 24.x.x, build xxxxxxx
```

---

### **2. 在 macOS 上安装 Docker**

#### 2.1 下载 Docker Desktop
1. 前往 [Docker 官方下载页面](https://www.docker.com/products/docker-desktop/)。
2. 选择 macOS 版本并下载。

#### 2.2 安装 Docker Desktop
1. 双击下载的 `.dmg` 文件。
2. 将 Docker 图标拖入 **Applications** 文件夹。
3. 打开 **Applications** 文件夹,运行 Docker。

#### 2.3 配置 Docker Desktop
1. 在首次启动时,可能需要输入管理员密码,输入后继续。
2. 登录 Docker Hub 账号。

#### 2.4 验证 Docker 安装
打开终端,输入:
```bash
docker --version
```
**输出示例**:
```
Docker version 24.x.x, build xxxxxxx
```

---

### **3. 在 Linux 上安装 Docker**

以 Ubuntu 为例,其他 Linux 发行版的安装步骤类似。

#### 3.1 更新系统软件包
```bash
sudo apt update && sudo apt upgrade -y
```

#### 3.2 安装必要的依赖项
```bash
sudo apt install apt-transport-https ca-certificates curl software-properties-common
```

#### 3.3 添加 Docker GPG 密钥
```bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
```

#### 3.4 添加 Docker 软件源
```bash
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
```

#### 3.5 安装 Docker 引擎
```bash
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
```

#### 3.6 配置 Docker 服务
1. 启动 Docker 服务:
   ```bash
   sudo systemctl start docker
   ```
2. 设置开机自启动:
   ```bash
   sudo systemctl enable docker
   ```

#### 3.7 将当前用户添加到 Docker 用户组
```bash
sudo usermod -aG docker $USER
```
**注意**:执行此命令后需重新登录或重新启动终端。

#### 3.8 验证 Docker 安装
输入以下命令:
```bash
docker --version
```
**输出示例**:
```
Docker version 24.x.x, build xxxxxxx
```

---

## **三、验证 Docker 功能**

无论在哪个操作系统上安装完成 Docker,都可以通过以下命令验证其功能:

1. 拉取并运行测试镜像:
   ```bash
   docker run hello-world
   ```
2. 如果安装成功,您将看到如下输出:
   ```
   Hello from Docker!
   This message shows that your installation appears to be working correctly.
   ```

---

## **四、常见问题及解决方法**

### **1. 启动 Docker 时失败**
- **原因**:虚拟化未启用。
- **解决办法**:进入 BIOS,启用虚拟化支持(VT-x 或 AMD-V)。

### **2. 权限问题(Linux)**
- **现象**:运行 Docker 命令时需要 `sudo`。
- **解决办法**:
  ```bash
  sudo usermod -aG docker $USER
  ```

### **3. WSL 2 配置错误(Windows)**
- **现象**:Docker Desktop 提示未启用 WSL 2。
- **解决办法**:
  1. 安装 WSL 2 更新包:
     [WSL 2 内核更新包下载链接](https://aka.ms/wsl2kernel)。
  2. 设置 WSL 2 为默认版本:
     ```bash
     wsl --set-default-version 2
     ```

---

## **五、后续学习方向**

完成 Docker 安装后,您可以学习以下内容以深入掌握 Docker:
1. **Docker 基本命令**:如 `docker build`, `docker run`, `docker ps`, `docker stop` 等。
2. **编写 Dockerfile**:学习如何创建自定义容器镜像。
3. **Docker Compose**:管理和运行多容器应用。
4. **容器编排工具**:如 Kubernetes,用于管理集群中的容器。

Docker 是现代开发和部署的必备技能,掌握它将显著提高开发效率!


http://www.kler.cn/a/396832.html

相关文章:

  • [产品管理-82]:《产品经理从入门到精通》产品经理的基本思维与核心思想
  • 【MySQL】SQL语言
  • Flutter:Widget生命周期
  • 千益畅行,共享旅游卡市场乱象解析与未来展望
  • 《C语言程序设计现代方法》note-4 基本类型 强制类型转换 类型定义
  • Flutter下拉刷新上拉加载的简单实现方式二
  • 《C++ 实现生成多个弹窗程序》
  • 【Conda】Windows下conda的安装并在终端运行
  • 谷歌AI进军教育,这将改变未来?
  • Vue3中实现插槽使用
  • 桥梁缺陷YOLO免费数据集分享 – 6308张已标注8类缺陷图像
  • 牛客题库 21738 牛牛与数组
  • 【React】状态管理之Zustand
  • SQL Server 查询设置 - LIKE/DISTINCT/HAVING/排序
  • C++创建型设计模式综合示例
  • Docker中最常用的一些命令
  • [杂项] C++从一个序列查找子序列的方法
  • SOHO场景开局(小型,多子网):AP+管理型交换机+路由器+光猫
  • windows@多系统引导名字修改@默认引导系统修改@bcdedit配置
  • c++ 类和对象(中)
  • 如何建立devops?
  • Flutter-Padding组件
  • leetcode hot100【LeetCode 236.二叉树的最近公共祖先】java实现
  • 【国产操作系统对Qt支持有哪些?】
  • 动态IP代理技术详解与实现
  • 后端Node学习项目-用户管理-增删改查