安企CMS的安装-Docker 部署

📅 👁️ 1

Docker 部署是 AnQiCMS 最快捷的安装方式,适合快速体验和测试环境。

Docker 镜像地址:https://hub.docker.com/r/anqicms/anqicms


方式一:Docker 命令行部署

适用于已安装 Docker 的环境(任何操作系统)。

快速启动

# 拉取最新镜像
docker pull anqicms/anqicms:latest

# 运行容器
docker run -d --name anqicms -p 8001:8001 anqicms/anqicms:latest

参数说明

# -d          后台运行
# --name      容器名称(可自定义)
# -p 8001:8001 映射端口:宿主机端口:容器端口

启动后操作

  1. 浏览器访问 http://服务器IP:8001
  2. 进入初始化安装界面(如果容器不自带数据库,需单独连接 MySQL)
  3. 完成安装后访问 http://服务器IP:8001/system/ 进入后台

提示:Docker 容器的 MySQL 需要另行部署。建议在同一 Docker 网络中创建一个 MySQL 容器,然后在初始化时填写 MySQL 容器的内网地址。

使用 Docker Compose(推荐)

创建 docker-compose.yml 文件:

version: '3'

services:
  mysql:
    image: mysql:5.7
    container_name: anqicms-mysql
    environment:
      MYSQL_ROOT_PASSWORD: your_root_password
      MYSQL_DATABASE: anqicms
      MYSQL_CHARACTER_SET_SERVER: utf8mb4
      MYSQL_COLLATION_SERVER: utf8mb4_unicode_ci
    volumes:
      - ./mysql-data:/var/lib/mysql
    restart: always

  anqicms:
    image: anqicms/anqicms:latest
    container_name: anqicms
    ports:
      - "8001:8001"
    depends_on:
      - mysql
    restart: always

启动:

docker-compose up -d

初始化安装时,数据库主机填写 anqicms-mysql(容器名),用户名 root,密码为 your_root_password

管理命令

# 查看容器状态
docker ps | grep anqicms

# 查看容器日志
docker logs anqicms

# 停止容器
docker stop anqicms

# 启动容器
docker start anqicms

# 重启容器
docker restart anqicms

# 删除容器
docker rm -f anqicms

方式二:宝塔面板 Docker 一键部署

适用版本:宝塔面板 9.2.0+(2024 年 9 月 5 日后发布的版本)

以下演示基于宝塔面板 9.5.0 版本。

Step 1:安装 Docker

  1. 登录宝塔面板
  2. 左侧菜单 → Docker(如未找到,前往 面板设置面板菜单隐藏 → 开启 Docker 显示)
  3. 首次进入会提示安装 Docker,点击 立即安装
  4. 安装完成后,还需进行依赖安装

bt-docker-open.png

docker-bt-1.png

Step 2:安装 Docker 版 MySQL

  1. 在 Docker 应用商店 搜索 mysql
  2. 点击 安装
  3. 如果服务器内存低于 2GB,选择 5.6 版本,否则默认 5.7
  4. 勾选 允许外部访问(默认勾选)
  5. 安装完成后,点击 详情,复制 root 密码

bt-docker-mysql.png

bt-docker-mysql-pass.png

Step 3:安装 AnQiCMS

  1. 在 Docker 应用商店 搜索 anqicms
  2. 点击 安装

docker-bt-2.png

  1. 填写配置信息:
配置项 说明
网站域名 已解析到服务器的域名(如 www.anqicms.com
数据库名称 默认 anqicms(安装多个站时需修改)
数据库密码 上一步复制的 MySQL root 密码
端口 默认 8001(安装多个站时需修改为 80028003 等)

bt-docker-anqicms.png

  1. 点击 确定,等待 1-5 分钟完成安装

docker-bt-4.png

Step 4:开始使用

安装完成后,默认账号密码:

项目 内容
默认账号 admin
默认密码 123456
后台地址 http://你的域名/system/

方式二扩展:通过宝塔反向代理添加多站点

如果你已通过宝塔 Docker 部署了 AnQiCMS,并希望在同一台服务器上添加更多站点,可以通过宝塔的 反向代理站点 功能实现,无需再创建新容器。

Step 1:添加反向代理站点

  1. 宝塔面板 → 网站反向代理添加反代
  2. 填写以下配置:
配置项 填写内容
域名 新站点的域名(如 dev.anqicms.com
目标 URL http://127.0.0.1:8001(默认端口,如安装多个容器则填对应端口)

docker-bt-5.png

  1. 点击 确定 完成创建

Step 2:在 AnQiCMS 后台添加新站点

  1. 登录主站后台 → 多站点管理添加新站点
  2. 填写以下信息:
字段 说明
站点名称 根据实际填写
站点根目录 /app/ 开头,如 /app/dev_anqicms.com(Docker 容器的根目录)
网站地址 新站点域名,如 http://dev.anqicms.com
管理员账号 新站点的管理员账号
管理员密码 新站点的管理员密码
数据库名称 新数据库名称,如 dev_anqicms_com(不要与已有库重复)
数据库信息复用 选择 复用默认数据库账号信息(Docker 环境拥有完整数据库权限)
选择使用的模板 根据需求选择

docker-bt-11.png

  1. 点击 确定 完成创建

Step 3:使用新站点

创建完成后,新站点即可直接访问。后台地址为 http://新域名/system/

docker-bt-12.png


方式三:1Panel Docker 部署

Step 1:安装 MySQL 和 OpenResty

在 1Panel 应用商店 中安装以下软件:

  • OpenResty(替代 Nginx 做反向代理)
  • MySQL 5.7+ 或 8.0

Step 2:创建 AnQiCMS 容器

  1. 左侧菜单 → 容器容器 Tab → 创建容器
  2. 填写以下配置:
项目 填写内容
名称 anqicms
镜像 手动输入 anqicms/anqicms:latest
端口(服务器) 8001(安装多个站时改为 80028003 等)
端口(容器) 8001
重启规则 失败后重启

1panel-1.png

1panel-2.png

  1. 点击 确认

Step 3:设置反向代理

  1. 左侧菜单 → 网站创建网站
  2. 选择 反向代理

1panel-3.png

  1. 填写配置:
项目 填写内容
主域名 已解析的域名,如 test.anqicms.com
代理地址 127.0.0.1:8001

1panel-4.png

  1. 点击 确认

Step 4:初始化安装

  1. 浏览器访问 http://test.anqicms.com
  2. 进入初始化安装界面
  3. 填写数据库信息(数据库主机填写 MySQL 容器名称或内网 IP)
  4. 安装完成后,访问 http://test.anqicms.com/system/ 进入后台

方式四:aaPanel(宝塔国际版)Docker 部署

Step 1:安装 aaPanel

aaPanel 下载地址:https://www.aaPanel.com/new/download.html

Step 2:安装 Docker 和 AnQiCMS

  1. 登录 aaPanel
  2. 进入 Docker 界面,安装 Docker(如未安装)
  3. App Store 中搜索 anqicms

aapanel-11.png

  1. 点击 Install

aapanel-12.png

  1. 填写域名和端口(默认 8001
  2. 点击 Confirm,等待 1-5 分钟

aapanel-13.png

Step 3:开始使用

默认账号密码同宝塔 Docker 部署:

项目 内容
默认账号 admin
默认密码 123456
后台地址 http://你的域名/system/

Docker 部署对比总结

部署方式 难度 适用场景 是否需要额外配置
Docker 命令行 ⭐⭐ 熟悉 Docker 的开发者 需单独部署 MySQL
Docker Compose ⭐⭐ 开发测试环境 一次配置,后续一键启动
宝塔 Docker 新手、快速体验 自动处理 MySQL 和反向代理
1Panel Docker ⭐⭐ 1Panel 用户 需手动配置反向代理
aaPanel Docker 国外服务器用户 自动处理

❓ Docker 部署 MySQL 可以不用 Docker 吗?我用宿主机上的 MySQL 行不行?

完全可以。 不一定非要用 Docker 部署 MySQL。你可以用宿主机上已有的 MySQL,或者远程 MySQL 服务。

初始化安装时,数据库主机填写以下地址之一:

MySQL 位置 数据库主机地址 说明
宿主机(同一台服务器) host.docker.internal Docker 内部访问宿主机的特殊地址
宿主机(同一台服务器) 172.17.0.1 Docker 默认网桥的宿主机地址
远程 MySQL 服务器 公网IP或域名 填写可访问的远程地址
同 Docker 网络 容器名称 anqicms-mysql(需在同一 Docker 网络)

❓ Docker 容器重启或删除后,数据会丢失吗?如何持久化保存?

默认情况下,容器的数据会丢失。 因为 MySQL 的数据文件存储在容器内部,容器删除后数据就没了。解决方案是使用数据卷挂载

使用 Docker Compose(推荐的方式)已经自动做了数据卷挂载(./mysql-data:/var/lib/mysql),数据会保存在 mysql-data/ 目录中,容器重启/删除后数据仍保留。

如果使用 docker run 命令行启动,可以加上 -v 参数挂载数据卷:

docker run -d --name anqicms-mysql \
  -e MYSQL_ROOT_PASSWORD=yourpassword \
  -v ./mysql-data:/var/lib/mysql \    # ← 这行就是数据持久化
  mysql:5.7

AnQiCMS 容器本身(anqicms/anqicms)是纯程序,没有持久化数据,重启不会丢失配置。

❓ Docker 版本的 AnQiCMS 如何升级?

升级步骤:

# 1. 拉取最新镜像
docker pull anqicms/anqicms:latest

# 2. 删除旧容器(数据不会丢失,因为 MySQL 在另一个容器中或使用数据卷挂载)
docker rm -f anqicms

# 3. 重新创建容器(使用同样的启动命令)
docker run -d --name anqicms -p 8001:8001 anqicms/anqicms:latest

# 4. 进入后台 → 工具 → 更新缓存 → 点击"更新数据库表结构"

如果你使用的是 Docker Compose:

docker compose pull     # 拉取最新镜像
docker compose up -d    # 重新创建容器

❓ Docker 部署后,模板和附件是保存在容器内还是宿主机?我可以直接修改模板文件吗?

默认情况下模板和附件都保存在容器内,删除容器后会丢失,也无法直接在宿主机上编辑模板文件。

建议: 如果计划修改模板文件,建议将模板目录挂载到宿主机:

# docker-compose.yml 中为 anqicms 服务添加
volumes:
  - ./template:/app/template    # 模板目录挂载到宿主机
  - ./public:/app/public        # 静态资源目录挂载到宿主机
  - ./data:/app/data            # 数据目录挂载到宿主机

相关文章

安企CMS的安装-服务器手动部署

适用场景 :无面板的 Linux 服务器(如 CentOS / Ubuntu),适合熟悉命令行操作的用户。通过下载安装包、配置 Nginx 反向代理和 MySQL 数据库的方式完成部署。 前置准备 一台 Linux 服务器(CentOS 7+ 或 Ubuntu 20.04+) 已安装 Nginx 和 MySQL 5.6.35+(推荐使用 LNMP 一键安装包 ) 一个已解析到服务器的域名 已下载 AnQiCMS Linux 安装包 安装步骤 Step 1:下载并解压 # 登录服务器 ssh

2026-07-18

安企CMS的安装-PHPStudy(小皮面板)部署

适用场景 :Windows 本地开发环境或 Windows 服务器。PHPStudy(小皮面板)集成 Nginx、MySQL、PHP 等组件,AnQiCMS 在其中通过 Nginx 反向代理方式运行。 前置准备 已安装 PHPStudy(小皮面板) 软件运行模式切换为 Nginx + MySQL 套餐 一个本地测试域名(如 dev.anqicms.com )或使用 IP + 端口访问 已下载 AnQiCMS Windows 安装包 安装步骤 Step 1:创建站点 打开 PHPStudy

2026-07-18

安企CMS的安装-宝塔面板部署

2.2 宝塔面板部署 适用版本 :宝塔面板 7.9.3+。宝塔面板部署分为传统部署(上传安装包,配置反向代理)和 Docker 一键部署两种方式,本章先介绍传统部署方式。 前置准备 一台已安装宝塔面板的 Linux 服务器(CentOS / Ubuntu / Debian 均可) 一个已解析到服务器的域名(如 www.anqicms.com ) 已安装 MySQL 5.6.35+(推荐 5.7+ 或 8.0) 从官网或 GitHub 下载 AnQiCMS Linux 安装包 方式一:宝塔 7

2026-07-18

安企CMS的下载与安装

介绍安企CMS安装包的多种下载渠道(官网、GitHub、镜像站)、不同操作系统与架构的版本选择方法以及安装包的文件校验方式,确保下载到正确且完整的版本。

2026-07-10

安企CMS的安装-源码编译安装

适用人群 :需要二次开发、定制功能,或官方提供的二进制包无法满足需求的开发者。 难度 :⭐⭐⭐⭐(需要熟悉 GoLang 和命令行操作) 前置条件 软件 版本要求 说明 GoLang 1.13+(推荐 1.25+) 编译 Go 源码 Git 任意版本 克隆代码仓库 MySQL 5.6.35+ 运行数据库 如果尚未安装 GoLang,请访问 https://go.dev/dl/ 下载安装。 获取源码 # 从 GitHub 克隆(推荐) git clone https://github

2026-07-18

安企CMS的安装-同一服务器多站点部署

安企CMS 支持在同一台服务器上运行多个独立站点,每个站点拥有独立的域名、数据库、模板和管理员。本章详细介绍多站点配置的完整步骤和注意事项。 方案一:多站点管理(推荐) 适用条件 :已有一个安装好并运行的 AnQiCMS 主站点。 此方案使用 AnQiCMS 内置的 多站点管理 功能,所有站点共用同一个 AnQiCMS 程序,但各自独立运行。不需要复制多份代码。 前置准备 已部署并正常运行一个 AnQiCMS 主站点(端口 8001) 主站后台有 多站点管理 菜单权限(默认安装的站点具备)

2026-07-18

安企CMS的安装-安装引导与初始化

首次启动 AnQiCMS 时,需要完成初始化安装,包括配置数据库连接信息、设置管理员账号密码、指定站点名称等关键步骤,是系统正式使用前的必经环节。 何时需要初始化 以下情况需要进行初始化安装: 场景 说明 首次部署 全新安装 AnQiCMS 恢复出厂状态 清空数据后重新安装 如果通过 宝塔 Docker 或 aaPanel Docker 安装,系统会自动完成初始化(默认账号 admin / 密码 123456),无需手动执行初始化流程。 初始化步骤 Step 1:启动 AnQiCMS 确保

2026-07-18

安企CMS的安装-常见安装问题排查

汇总安企CMS安装过程中的常见问题及解决方案,涵盖端口被占用、数据库连接失败、页面白屏、权限错误、依赖缺失等典型场景,帮助用户快速定位并解决问题。 问题 1:端口被占用 现象 :启动 AnQiCMS 后,网站无法访问。 原因 :默认端口 8001 被其他程序占用。 排查方法 : # Linux / MacOS:查看 8001 端口被谁占用 lsof -i:8001 # 输出示例: # COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME #

2026-07-18