宝塔Docker管理器使用教程:从安装到部署容器全流程
前置准备
在使用宝塔Docker管理器前,请确认以下条件已满足:
- 服务器环境:已安装宝塔面板(免费版即可),建议 CentOS 7+ 或 Ubuntu 18.04+。
- 面板版本:宝塔面板版本不低于 7.0,确保软件商店功能正常。
- 端口规划:如果后续需要暴露容器端口(如 8080),需在宝塔安全组或云厂商防火墙中放行对应端口。
- 网络通畅:服务器能正常访问 Docker Hub 或配置好镜像加速器。
注意:Docker 管理器并非系统自带,需要手动安装插件。如果你从未使用过 Docker,完全不用担心,本文每一步都会截图说明(虽然此处无图,但文字会描述清楚)。
分步操作
第一步:安装 Docker 管理器插件
- 登录宝塔面板后台,点击左侧菜单 软件商店。
- 在搜索框输入
Docker,找到 Docker管理器(图标为鲸鱼)。 - 点击 安装,选择版本(建议最新稳定版),确认安装。
- 等待约1-2分钟,安装完成后会显示 已安装 状态。
第二步:配置镜像加速器(可选但推荐)
国内访问 Docker Hub 可能较慢,配置镜像加速能大幅提升拉取速度。
- 进入宝塔面板的 Docker管理器(左侧菜单新增的“Docker”)。
- 点击 设置 → 镜像加速。
- 输入阿里云或中科大的加速地址,例如:
https://registry.cn-hangzhou.aliyuncs.com- 点击 保存。如果没有自己的加速器账号,可以使用公共加速地址(注意稳定性)。
第三步:拉取 Nginx 镜像并运行容器
- 在 Docker 管理器首页,点击 镜像管理 → 拉取镜像。
- 输入镜像名
nginx:latest,点击 拉取。 - 等待拉取完成,可在镜像列表中看到
nginx:latest。 - 点击 容器管理 → 创建容器。
- 填写以下关键参数:
- 镜像:选择刚刚拉取的 nginx:latest
- 容器名称:
my-nginx(自定义) - 端口映射:宿主机端口
8080映射到容器端口80,格式:8080:80 - 目录映射:可选,如本机
/www/wwwroot/myweb映射到容器/usr/share/nginx/html,用于挂载网站文件。
- 其他保持默认,点击 创建。
第四步:启动并访问容器
创建完成后,容器会自动启动。
在容器列表可以看到状态为 运行中。
打开浏览器,访问 http://服务器IP:8080,如果看到 Nginx 默认欢迎页,说明宝塔Docker管理器使用成功,容器运行正常。
避坑指南
- 安装后找不到 Docker 管理器入口:刷新面板页面,或检查软件商店是否显示“已安装”,如果仍未出现,尝试重启面板。
- 拉取镜像报错“net/http: TLS handshake timeout”:大概率网络问题,先配置镜像加速器再重试。如果加速器无效,可临时更换为
docker.io官方源,但速度较慢。 - 容器启动后无法访问:
- 检查宿主机防火墙(宝塔安全→系统防火墙)是否放行了映射的端口(如8080)。
- 检查云服务器安全组规则是否开放该端口。
- 确认端口未被其他进程占用:
netstat -tulpn | grep 8080。
- 目录映射未生效:容器创建后无法修改映射,建议删除容器重新创建,并确保宿主机目录存在且有读写权限。
高频问题解答
Q1:宝塔Docker管理器支持哪些操作系统?
A:支持 CentOS 7/8、Ubuntu 18.04+/Debian 10+等常见系统,且宝塔面板版本需≥7.0。
Q2:如何停止或删除运行中的容器?
A:在容器管理页面,点击对应容器的“停止”或“删除”按钮。删除容器会同时删除容器内所有数据(除非挂载了外部卷),请谨慎操作。
Q3:为什么镜像列表为空?
A:确认是否已完成拉取;如果拉取过程报错,查看日志(容器管理→日志)排查。另外,已删除的镜像不会显示。
Q4:可以用宝塔Docker管理器部署数据库吗?
A:可以,方法类似。例如拉取 mysql:5.7,创建容器时映射端口 3306,并设置环境变量 MYSQL_ROOT_PASSWORD。但生产环境建议手动调整优化参数。
效果验证
- 确认容器
my-nginx状态为 运行中。 - 在服务器终端执行
docker ps命令,若显示CONTAINER ID IMAGE COMMAND PORTS NAMES且包含my-nginx,则验证成功。 - 浏览器访问
http://服务器IP:8080显示 Nginx 欢迎页,证明容器服务正常。 - 如需验证持久化目录,可以在挂载目录下创建
index.html文件,重启容器后访问确认内容是否被正确读取。
以上即 宝塔Docker管理器使用 的完整入门流程。
在日常运维中,你可以通过图形化界面轻松管理多个容器,大幅提升部署效率。
如果遇到其他问题,欢迎留言交流。