
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为 Dolibarr ERP 提供容器化部署方案。Dolibarr 是一款开源企业资源规划(ERP)和客户关系管理(CRM)软件,适用于中小型企业管理业务流程。本镜像包含完整的数据库配置支持、生产模式、HTTPS 强制(SSL 需由反向代理提供)、自动升级处理等功能,简化 Dolibarr 的部署和运维流程。
本镜像不包含数据库,需配合现有数据库或数据库容器使用。
启动容器命令:
consoledocker run -d -p 8080:80 --link my-db:db docker.xuanyuan.run/upshift/dolibarr
访问方式:通过 http://localhost:8080 访问 Dolibarr,默认管理员账户 admin,密码 dolibarr。
Dolibarr 的应用数据和文档存储在以下路径,需通过卷挂载确保持久化:
/var/www/html:Dolibarr 核心安装目录(含配置、模块等)/var/www/documents:文档存储目录使用命名卷挂载(推荐)
Dolibarr 卷配置:
consoledocker run -d \ -v dolibarr_html:/var/www/html \ -v dolibarr_docs:/var/www/documents \ docker.xuanyuan.run/upshift/dolibarr
数据库卷配置(以 MariaDB 为例):
consoledocker run -d \ -v dolibarr_db:/var/lib/mysql \ docker.xuanyuan.run/mariadb
高级卷挂载(自定义配置/模块)
可额外挂载以下路径实现细粒度控制:
/var/www/html/custom:自定义模块目录/var/www/html/conf:配置文件目录/var/www/html/theme/<YOUR_CUSTOM_THEME>:自定义主题目录通过环境变量可预配置 Dolibarr 安装参数,无需手动填写安装向导。所有参数参考 https://github.com/Dolibarr/dolibarr/blob/develop/htdocs/conf/conf.php.example 和 https://github.com/Dolibarr/dolibarr/blob/develop/htdocs/install/install.forced.sample.php%E3%80%82
数据库配置参数
| 参数名 | 默认值 | 说明 | 示例 |
|---|---|---|---|
DOLI_DB_TYPE | mysqli | 数据库驱动类型,可选 mysqli(MySQL/MariaDB)或 pgsql(PostgreSQL) | DOLI_DB_TYPE=pgsql |
DOLI_DB_HOST | localhost | 数据库主机地址或域名 | DOLI_DB_HOST=mysql.myserver.com |
DOLI_DB_PORT | 3306 | 数据库端口,MySQL 默认 3306,PostgreSQL 默认 5432 | DOLI_DB_PORT=5432 |
DOLI_DB_NAME | (空) | 数据库名称 | DOLI_DB_NAME=dolibarr_prod |
DOLI_DB_USER | (空) | 数据库访问用户 | DOLI_DB_USER=dolibarr_user |
DOLI_DB_PASSWORD | (空) | 数据库用户密码 | DOLI_DB_PASSWORD=SecurePass123! |
DOLI_DB_PREFIX | llx_ | 数据库表前缀 | DOLI_DB_PREFIX=doli_ |
DOLI_DB_CHARACTER_SET | utf8 | 数据库字符集,取决于驱动类型 | DOLI_DB_CHARACTER_SET=utf8mb4 |
DOLI_DB_COLLATION | utf8_unicode_ci | 数据库排序规则,取决于驱动类型 | DOLI_DB_COLLATION=utf8mb4_unicode_ci |
DOLI_DB_ROOT_LOGIN | (空) | 数据库 root 用户(用于自动创建数据库和用户) | DOLI_DB_ROOT_LOGIN=root |
DOLI_DB_ROOT_PASSWORD | (空) | 数据库 root 用户密码 | DOLI_DB_ROOT_PASSWORD=RootPass456! |
管理员账户配置
| 参数名 | 默认值 | 说明 | 示例 |
|---|---|---|---|
DOLI_ADMIN_LOGIN | admin | 初始管理员登录名 | DOLI_ADMIN_LOGIN=superadmin |
DOLI_ADMIN_PASSWORD | dolibarr | 初始管理员密码 | DOLI_ADMIN_PASSWORD=AdminPass789! |
应用配置参数
| 参数名 | 默认值 | 说明 | 示例 |
|---|---|---|---|
DOLI_URL_ROOT | http://localhost | 应用根 URL(不含末尾 /),需指向 htdocs 目录 | DOLI_URL_ROOT=https://erp.company.com |
DOLI_PROD | 0 | 生产模式开关:0(开发模式,显示错误),1(生产模式,隐藏错误) | DOLI_PROD=1 |
DOLI_HTTPS | 0 | HTTPS 强制模式:0(关闭)、1(基于 SCRIPT_URI 重定向)、2(基于 SERVER["HTTPS"] 重定向)、'https://domain.com'(指定域名重定向) | DOLI_HTTPS=2 |
DOLI_NO_CSRF_CHECK | 0 | CSRF 保护开关:0(启用),1(禁用,适用于代理 URL 重写场景) | DOLI_NO_CSRF_CHECK=1 |
PHP_INI_* | (空) | PHP 配置参数,格式 PHP_INI_<配置项>=<值> | PHP_INI_upload_max_filesize=50M |
认证配置(DOLI_AUTH)
| 参数名 | 默认值 | 说明 | 示例 |
|---|---|---|---|
DOLI_AUTH | dolibarr | 认证方式,取值为 htdocs/core/login 目录下文件名中 function_ 和 .php 之间的部分(除 forceuser),可逗号分隔多个方式(按顺序检查) | DOLI_AUTH=ldap,dolibarr |
LDAP 认证配置(需 DOLI_AUTH=ldap 且 DOLI_MODULES=modLdap)
| 参数名 | 默认值 | 说明 | 示例 |
|---|---|---|---|
DOLI_LDAP_HOST | 127.0.2.1 | LDAP 服务器地址,可逗号分隔多个(支持 ldaps:// 前缀) | DOLI_LDAP_HOST=ldaps://ldap.company.com:636,ldap://backup.ldap.com:389 |
DOLI_LDAP_PORT | 389 | LDAP 端口 | DOLI_LDAP_PORT=636 |
DOLI_LDAP_VERSION | 3 | LDAP 协议版本 | DOLI_LDAP_VERSION=2 |
DOLI_LDAP_SERVERTYPE | openldap | LDAP 服务器类型:openldap、activedirectory 或 egroupware | DOLI_LDAP_SERVERTYPE=activedirectory |
DOLI_LDAP_DN | (空) | LDAP 基准 DN | DOLI_LDAP_DN=ou=Employees,dc=company,dc=com |
DOLI_LDAP_LOGIN_ATTRIBUTE | uid | 登录属性(如 Active Directory 用 samaccountname) | DOLI_LDAP_LOGIN_ATTRIBUTE=samaccountname |
DOLI_LDAP_FILTER | (空) | LDAP 过滤规则,定义后忽略 DOLI_LDAP_DN 和 DOLI_LDAP_LOGIN_ATTRIBUTE | DOLI_LDAP_FILTER=(&(uid=%1%)(memberOf=cn=ERP_Users,ou=Groups,dc=company,dc=com)) |
DOLI_LDAP_ADMIN_LOGIN | (空) | LDAP 管理员 DN(***绑定禁用时必填) | DOLI_LDAP_ADMIN_LOGIN=cn=admin,dc=company,dc=com |
DOLI_LDAP_ADMIN_PASS | (空) | LDAP 管理员密码(***绑定禁用时必填) | DOLI_LDAP_ADMIN_PASS=LDAPPass789! |
DOLI_LDAP_DEBUG | false | LDAP 调试开关 | DOLI_LDAP_DEBUG=true |
以下示例使用 MariaDB 数据库,通过命名卷持久化数据,适用于开发或测试环境(无 SSL,建议配合反向代理使用)。
创建 docker-compose.yml 文件:
ymlversion: '3' volumes: dolibarr_html: # 存储 Dolibarr 核心数据 dolibarr_docs: # 存储 Dolibarr 文档 dolibarr_db: # 存储 MariaDB 数据 services: mariadb: image: docker.xuanyuan.run/mariadb:latest restart: always command: --character_set_client=utf8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci volumes: - dolibarr_db:/var/lib/mysql environment: - "MYSQL_DATABASE=dolibarr" # 数据库名 - "MYSQL_USER=dolibarr" # 数据库用户 - "MYSQL_PASSWORD=dolibarr" # 数据库密码 - "MYSQL_RANDOM_ROOT_PASSWORD=yes" # 自动生成 root 密码 dolibarr: image: docker.xuanyuan.run/upshift/dolibarr:latest restart: always depends_on: - mariadb ports: - "8080:80" # 主机 8080 端口映射到容器 80 端口 environment: - "DOLI_DB_HOST=mariadb" # 数据库主机(服务名) - "DOLI_DB_NAME=dolibarr" # 数据库名(与 MariaDB 一致) - "DOLI_DB_USER=dolibarr" # 数据库用户(与 MariaDB 一致) - "DOLI_DB_PASSWORD=dolibarr" # 数据库密码(与 MariaDB 一致) - "DOLI_ADMIN_PASSWORD=SecureAdmin123!" # 自定义管理员密码 - "DOLI_PROD=1" # 启用生产模式 volumes: - dolibarr_html:/var/www/html - dolibarr_docs:/var/www/documents
启动服务:
consoledocker-compose up -d
访问安装向导:http://localhost:8080/install
http://<主机IP>:8080/install 访问安装向导mariadb)作为主机,输入环境变量中配置的数据库名、用户和密码http://<主机IP>:8080/install/step2.php 使用自动生成的配置Docker 命令方式
console# 拉取新版本镜像 docker pull docker.xuanyuan.run/upshift/dolibarr # 停止并删除旧容器(数据保存在卷中) docker stop <容器ID> && docker rm <容器ID> # 用原参数启动新容器 docker run <原启动参数> -d upshift/dolibarr
Docker Compose 方式
console# 拉取新版本镜像 docker-compose pull # 重启服务(自动使用新镜像) docker-compose up -d
注意:升级时建议逐步更新(如 5.0 → 6.0 → 7.0),不要跳过主要版本。
生产环境需通过反向代理(如 Nginx、Traefik)实现 HTTPS 加密。推荐方案:
DOLI_HTTPS=1 或 2 强制 HTTPS 重定向您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 upshift/dolibarr 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: