作为一名深谙安企CMS(AnQiCMS)运作之道的网站运营人员,我深知一套高效、稳定的内容管理系统对于企业发展的重要性。AnQiCMS 以其基于 Go 语言的高性能架构、灵活的内容模型和对 SEO 的友好设计,为中小企业和内容运营团队提供了卓越的解决方案。它致力于让网站部署简单、运行安全、界面优雅,并具备极快的执行速度,有效规避了众多潜在的安全问题。
对于许多运营者而言,在服务器上部署和管理 CMS 系统,尤其是涉及到 Docker 容器技术时,可能会显得有些复杂。幸运的是,借助像 aaPanel(宝塔面板国际版)或宝塔面板这类流行的服务器管理面板,AnQiCMS 的 Docker 一键部署流程变得异常简便。接下来,我将详细阐述在这些面板上如何通过 Docker 轻松部署 AnQiCMS。
在 aaPanel 面板上部署 AnQiCMS
aaPanel,即宝塔面板国际版,为全球用户提供了一致的面板管理体验。在 aaPanel 上部署 AnQiCMS,我们首先要确保面板本身已正确安装。如果你尚未安装 aaPanel,请访问其官方网站获取最新的安装指引,并按照说明在你的服务器上完成安装。
部署 AnQiCMS 应用时,我们需要利用 aaPanel 的 Docker 功能。安装完 aaPanel 后,请导航至左侧菜单中的“容器”选项,并选择“容器”Tab页。点击“创建容器”按钮,一个新的配置界面将弹出。在这里,你需要在“名称”字段中输入 anqicms 作为容器名称。在“镜像”部分,勾选“手动输入”,然后在输入框中填入 AnQiCMS 的 Docker 镜像地址 anqicms/anqicms:latest。端口配置至关重要,请在“暴露端口”部分将“服务器”和“容器”端口都设置为 8001。如果你计划在同一服务器上部署多个 AnQiCMS 实例,则后续实例的服务器端口应依次递增,例如 8002、8003,但容器端口始终保持 8001。继续向下滚动,在“重启规则”处,建议选择“失败后重启”或“未手动停止则重启”,以确保服务的持续可用性。最后,点击“确认”按钮,Docker 容器的创建便会开始。
容器创建完成后,我们需要配置网站的反向代理,以便通过域名访问 AnQiCMS。请点击左侧菜单中的“网站”,然后选择“网站”Tab页,并点击“创建网站”按钮。在弹出的窗口中,选择“反向代理”类型。在“主域名”字段中,填入你为 AnQiCMS 网站准备的域名,例如 test.anqicms.com。而“代理地址”则应填写 127.0.0.1:8001,这里的端口号需与你之前为 AnQiCMS Docker 容器配置的服务器端口相匹配。完成这些设置后,点击“确认”即可创建反向代理站点。
现在,你可以在浏览器中输入你配置的域名,例如 http://test.anqicms.com/,来访问 AnQiCMS 的初始化安装界面。根据提示完成数据库信息和管理员账号的设置后,你的 AnQiCMS 网站即可投入使用。后台管理地址通常是你的域名后加上 /system/,例如 http://test.anqicms.com/system/。
在宝塔面板上部署 AnQiCMS
对于国内用户,宝塔面板提供了同样的便捷部署体验。请注意,Docker 部署功能通常适用于宝塔面板 9.2.0 及以上版本,建议你将面板升级到 9.5.0 或更高版本以获得**兼容性。如果你尚未安装宝塔面板,请前往其官方网站,复制推荐的通用安装脚本,并在服务器上执行安装。
在安装 AnQiCMS 之前,我们首先需要在 Docker 环境中安装 MySQL 数据库。在宝塔面板的左侧菜单中找到“Docker”选项(如果未显示,请前往“面板设置”开启),点击进入后,如果提示安装 Docker,请点击“立即安装”。安装 Docker 服务后,在 Docker 的应用商店中搜索并安装 MySQL。对于服务器内存低于 2GB 的情况,建议选择 MySQL 5.6 版本,否则默认安装 5.7 版本即可。安装时,务必勾选“允许外部访问”。安装完成后,点击 MySQL 的“详情”链接,复制 root 用户的密码,因为稍后部署 AnQiCMS 时会用到。
接着,在 Docker 的应用商店中搜索 anqicms,找到结果后点击“安装”按钮进入安装界面。在安装界面上,你需要填写以下关键信息:
- 网站域名:例如
www.anqicms.com。 - 数据库名称:默认为
anqicms。如果你计划部署多个 AnQiCMS 实例,每个实例都需要一个独立的数据库名称,请进行修改,例如anqicms_site2。 - 数据库密码:填入你之前从 Docker 版 MySQL 详情中复制的 root 用户密码。
- 端口:默认为
8001。同样,如果部署多个实例,请为每个实例分配不同的端口号,如8002、8003等。
点击“确定”后,系统将开始部署 AnQiCMS。这个过程通常需要 1 到 5 分钟,请耐心等待。部署成功后,你就可以像在 aaPanel 上一样,在浏览器中输入你设置的域名并加上 /system/ 来访问 AnQiCMS 的后台管理界面,例如 http://dev.anqicms.com/system/。默认的管理员账号为 admin,密码为 123456。首次登录后,强烈建议你立即修改这些默认凭据以增强安全性。
宝塔面板多站点部署 AnQiCMS 进阶
有时,你可能需要在同一台服务器上通过同一个 Docker AnQiCMS 容器运行多个网站。这可以通过宝塔面板的反向代理功能和 AnQiCMS 内置的多站点管理功能实现。
首先,在宝塔面板中,导航至左侧菜单的“网站”,选择“反向代理”Tab页,并点击“添加反代”。在弹出的界面中,新的域名填写你需要新增站点的域名,例如 newsite.anqicms.com。目标 URL 则指向你的 AnQiCMS Docker 容器,通常是 http://127.0.0.1:8001。点击“确定”完成反向代理站点的创建。
接下来,登录你已部署好的 AnQiCMS 后台(通常是第一个部署的站点,因为它拥有多站点管理权限),在左侧菜单中找到并点击“多站点管理”,然后点击“添加新站点”按钮。在新的站点配置界面中,你需要仔细填写以下信息:
- 站点名称:根据实际情况填写,以便区分。
- 站点根目录:鉴于 AnQiCMS 部署在 Docker 容器中,默认的根目录是
/app/。为了确保新站点数据的独立存储,你需要在此基础上创建一个唯一的子目录,例如/app/newsite_anqicms_com。注意,域名中的点号通常会替换为下划线。 - 网站地址:填写你为新站点配置的完整域名,例如
http://newsite.anqicms.com。 - 管理员账号密码:为新站点的后台设置独立的管理员账号和密码。
- 数据库名称:同样,为新站点分配一个唯一的数据库名称,例如
newsite_anqicms_com。 - 数据库信息复用:由于是在 Docker 环境下部署的 AnQiCMS,你通常可以直接选择“复用默认数据库账号信息”,因为 AnQiCMS 容器拥有访问其内部 MySQL 的权限。
- 选择使用的模板:为新站点选择一个默认模板。
点击“确定”按钮后,新的 AnQiCMS 站点便会创建完成。通过多站点管理列表中的“访问后台”按钮,你可以直接进入新站点的后台管理界面,或者直接在浏览器中输入新站点的域名并加上 /system/ 进行访问。
通过以上步骤,无论你选择 aaPanel 还是宝塔面板,都能轻松实现 AnQiCMS 的 Docker 化部署和管理,让你的内容运营工作更加高效便捷。
常见问题 (FAQ)
1. 部署 AnQiCMS 时,如果 Docker 容器启动失败或无法访问怎么办?
如果 Docker 容器启动失败,首先检查 Docker 服务是否正常运行。接着,查看容器日志,通常可以从中获取错误信息,例如端口冲突、镜像拉取失败或配置错误。如果端口被占用,可以使用 lsof -i:{端口号} 命令(Linux 系统)查找并结束占用端口的进程。如果是首次安装,务必检查 MySQL 数据库的安装是否正确,尤其是 root 密码是否正确提供给 AnQiCMS。最后,确保反向代理配置中的代理地址和端口与 Docker 容器实际监听的地址和端口完全匹配。
2. 如何在一台服务器上通过 Docker 部署多个 AnQiCMS 实例,每个实例拥有独立的数据库? 在宝塔面板或 aaPanel 上,为每个 AnQiCMS 实例部署一个独立的 Docker 容器,并确保每个容器映射到不同的服务器端口(例如 8001, 8002, 8003)。每个容器在安装时,应指定一个不同的数据库名称。在面板中为每个容器配置一个独立的反向代理站点,将其域名指向各自的服务器端口。这样,每个 AnQiCMS 实例都将拥有独立的运行环境和数据库。
3. 在 AnQiCMS 后台创建多站点时,“站点根目录”应该如何填写?
当 AnQiCMS 运行在 Docker 容器中时,其文件系统路径与宿主机不同。因此,在 AnQiCMS 后台的多站点管理中创建新站点时,“站点根目录”应填写容器内部的路径,通常以 /app/ 开头。为了保证数据隔离和唯一性,建议在 /app/ 后加上一个以新站点域名(将点号替换为下划线)命名的子目录,例如 /app/newsite_anqicms_com。AnQiCMS 将会在容器内的这个指定路径下存储该站点的缓存、配置文件等数据。