跳到主要内容

第 7 课:通过宝塔安装 Docker

第三阶段 · 阿里云 ECS 与宝塔面板 · 面向 macOS 和 Windows 的 Docker 初学者

本课完成标准​

你能够:

  • 解释 Docker Engine、Docker CLI、Docker Compose 和宝塔的关系;
  • 在宝塔软件商店安装 Docker;
  • 检查 Docker 服务是否运行;
  • 检查 Compose 是否可用;
  • 成功运行 hello-world 测试容器。

1. 先理解安装了什么​

名称小白解释作用
Docker Engine服务器上真正运行容器的后台程序创建镜像、启动和停止容器
Docker CLI你输入的 docker 命令向 Engine 发出指令
Docker Compose管理多个服务的命令工具读取 compose.yaml
宝塔浏览器里的服务器管理界面帮助安装和查看软件状态

流程可以记成:

宝塔软件商店(安装入口)
↓
Docker Engine(真正运行容器)

**关键认识:**宝塔只是安装和管理入口;以后运行 FastAPI 的仍然是服务器上的 Docker Engine,不是宝塔本身。

2. 在宝塔软件商店安装​

  1. 使用浏览器登录宝塔面板;
  2. 打开“软件商店”或类似的软件管理入口;
  3. 搜索 Docker;
  4. 选择稳定版本,点击安装;
  5. 等待安装任务完成,确认页面显示“运行中”或“已安装”。

宝塔界面名称和按钮可能随版本变化。如果软件商店中同时出现 Docker、Docker Compose 或相关插件,先安装 Docker 主程序,再确认 Compose 可用。

**不要重复安装多个 Docker 发行版。**如果服务器已经有手动安装的 Docker,请先确认现状,再决定是否继续,避免多个服务互相冲突。

3. 检查 Docker 服务状态​

打开宝塔终端,或从本地电脑 SSH 登录 ECS:

docker version
docker info

docker version 用来查看客户端和服务器端版本;docker info 用来确认后台 Engine 是否可连接。服务器正常时,应该能看到 Server 信息,而不是只显示 Client。

如果当前用户权限不足,可能需要在命令前加 sudo:

sudo docker version
sudo docker info

不要直接使用 chmod 777 解决权限问题。后续可以按 Linux 权限规则把用户加入 Docker 用户组,但生产服务器应明确知道这会赋予用户较高权限。

4. 检查 Compose​

docker compose version

现代 Docker 通常使用带空格的 docker compose。如果系统提示找不到命令,可能是 Compose 插件未安装或 Docker 服务没有正确完成安装。

命令含义结果
docker version查看 Client/Server 版本能连接 Engine
docker info查看 Engine 运行信息显示服务器配置
docker compose version查看 Compose 插件输出 Compose 版本

5. 运行第一个测试容器​

docker run --rm hello-world

第一次运行时,Docker 会从镜像仓库拉取 hello-world 镜像。成功时会打印一段说明文字,并自动删除这个临时容器。

这里的 --rm 表示容器退出后自动清理;它不会删除镜像。可以检查本地镜像:

docker image ls

测试通过说明:Docker CLI 能连接 Engine、Engine 能创建容器、服务器能拉取镜像并运行容器。

6. 开机启动和宝塔服务状态​

在宝塔软件页面开启 Docker 的开机启动(如果页面提供该选项)。这样 ECS 重启后,Docker Engine 会自动启动。

在 Linux 终端也可以查看服务状态:

sudo systemctl status docker

看到 active (running) 说明后台服务正在运行。这个命令只查看状态,不要在不了解影响的情况下执行全局停止命令。

7. 常见错误排查​

现象优先检查处理思路
Cannot connect to the Docker daemon宝塔软件状态、docker info启动 Docker 服务,再重试
permission denied当前用户、是否需要 sudo先临时使用 sudo,不要 chmod 777
docker compose not foundCompose 插件是否安装在宝塔确认插件或软件状态
Unable to find image服务器网络和 DNS查看完整错误,不要反复重试
宝塔按钮显示安装中很久安装任务日志、磁盘和网络等待或收集日志后再处理,不要并行重复安装

不要把 Docker API 端口(例如 2375)暴露到公网,也不要把 Docker socket 挂到不信任的容器中。

8. 一分钟自测​

问题 1:哪个命令最适合验证 Docker 能否创建并运行容器?

  • A. docker run --rm hello-world
  • B. docker delete everything
  • C. docker port 3306

问题 2:docker compose version 的作用是什么?

  • A. 检查 Compose 工具是否可用
  • B. 创建 MySQL 用户
  • C. 修改宝塔密码

答案:1A,2A。

本课通关证据​

docker version
docker compose version
docker run --rm hello-world
docker image ls

完成标准:Docker Engine、Compose 和 hello-world 均成功;Docker 服务设置为开机启动;没有开放 Docker API 公网端口。

如果遇到错误,请贴系统版本、宝塔软件状态、完整命令和完整输出,并隐藏密码、Token 和私钥。


← 第 6 课:安装并认识宝塔 · 第 8 课:通过宝塔安装 MySQL →

课程推荐

想系统学习这门课程?

你已阅读完本文。需要更完整的知识体系,可以继续了解「Vibe Coding 实战课程」。

查看课程详情