
Dolibarr的Docker镜像,首次启动时具备自动安装功能。
不再支持PHP < 7.4
Dolibarr 7、8、9、10、11、12、13、14版本不再更新
Linux x86-64(amd64)、ARMv7 32位(arm32v7 ⚠️ MariaDB/MySQL Docker镜像不支持此架构)和ARMv8 64位(arm64v8)
Dolibarr ERP & CRM是一款现代化软件包,用于管理组织活动(联系人、供应商、发票、订单、库存、日程等)。
https://github.com/dolibarr/dolibarr
此镜像基于https://registry.hub.docker.com/_/php/%E6%9E%84%E5%BB%BA%E3%80%82
重要:此镜像不包含数据库,需链接数据库容器使用。
建议使用Docker Compose与https://hub.docker.com/_/mariadb/%E9%9B%86%E6%88%90%EF%BC%88%E4%B9%9F%E5%8F%AF%E6%A0%B9%E6%8D%AE%E5%81%8F%E5%A5%BD%E4%BD%BF%E7%94%A8https://hub.docker.com/_/mysql/%EF%BC%89%E3%80%82
创建docker-compose.yml文件如下:
yamlservices: mariadb: image: mariadb:latest environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: dolibarr web: image: tuxgasy/dolibarr environment: DOLI_DB_HOST: mariadb DOLI_DB_USER: root DOLI_DB_PASSWORD: root DOLI_DB_NAME: dolibarr DOLI_URL_ROOT: 'http://0.0.0.0' PHP_INI_DATE_TIMEZONE: 'Europe/Paris' ports: - "80:80" links: - mariadb
然后运行所有服务:docker-compose up -d。现在可通过 [***] 访问新的Dolibarr安装。
examples目录中提供了多个示例,例如:
install.lock文件位于容器卷/var/www/documents中。
删除install.lock文件并启动更新版本的容器。确保环境变量DOLI_INSTALL_AUTO设置为1,将自动迁移数据库至新版本。也可通过Web界面进行标准升级。
将DOLI_DB_TYPE设置为pgsql可启用Dolibarr与PostgreSQL数据库配合使用。使用pgsql时,Dolibarr首次执行需手动安装:
http://0.0.0.0/install;/var/www/html/documents中添加install.lock(例如:docker-compose exec services-data_dolibarr_1 /bin/bash -c "touch /var/www/html/documents/install.lock")。这种设置下,版本升级必须通过Web界面进行:
install.lock文件(例如:docker-compose exec services-data_dolibarr_1 /bin/bash -c "rm -f /var/www/html/documents/install.lock");http://0.0.0.0/install;/var/www/html/documents中添加install.lock(例如:docker-compose exec services-data_dolibarr_1 /bin/bash -c "touch /var/www/html/documents/install.lock")。| 变量 | 默认值 | 描述 |
|---|---|---|
| DOLI_INSTALL_AUTO | 1 | 1:首次启动时执行安装 |
| DOLI_PROD | 1 | 1:Dolibarr将以生产模式运行 |
| DOLI_DB_TYPE | mysqli | 数据库服务器类型(mysqli、pgsql) |
| DOLI_DB_HOST | mysql | MariaDB/MySQL服务器主机名 |
| DOLI_DB_HOST_PORT | 3306 | MariaDB/MySQL服务器端口 |
| DOLI_DB_USER | doli | 数据库用户 |
| DOLI_DB_PASSWORD | doli_pass | 数据库用户密码 |
| DOLI_DB_NAME | dolidb | 数据库名称 |
| DOLI_ADMIN_LOGIN | admin | 首次启动时创建的管理员登录名 |
| DOLI_ADMIN_PASSWORD | admin | 管理员密码 |
| DOLI_URL_ROOT | http://localhost | Dolibarr安装的根URL |
| DOLI_ENABLE_MODULES | 安装时激活的模块逗号分隔列表(modUser始终激活)。例如:Societe,Facture,Stock | |
| DOLI_COMPANY_NAME | 容器初始化时设置Dolibarr的公司名称 | |
| DOLI_COMPANY_COUNTRYCODE | 容器初始化时设置公司和Dolibarr的国家(需2位代码,如"FR"、"GB"、"US"等) | |
| PHP_INI_DATE_TIMEZONE | UTC | PHP默认时区 |
| PHP_INI_MEMORY_LIMIT | 256M | PHP内存限制 |
| PHP_INI_UPLOAD_MAX_FILESIZE | 2M | PHP允许上传的最大文件大小 |
| PHP_INI_POST_MAX_SIZE | 8M | PHP接受的POST数据最大大小 |
| PHP_INI_ALLOW_URL_FOPEN | 0 | 允许URL感知的fopen包装器 |
| WWW_USER_ID | www-data用户ID(留空则不修改,开发时建议设为与主机用户相同ID) | |
| WWW_GROUP_ID | www-data组ID(留空则不修改) | |
| DOLI_AUTH | dolibarr | 用户认证方式,设为ldap或ldap, dolibarr可使用LDAP |
| DOLI_LDAP_HOST | 127.0.0.1 | LDAP服务器主机 |
| DOLI_LDAP_PORT | 389 | LDAP服务器端口 |
| DOLI_LDAP_VERSION | 3 | LDAP版本 |
| DOLI_LDAP_SERVER_TYPE | openldap | LDAP服务器类型(openLDAP、Active Directory、eGroupWare) |
| DOLI_LDAP_LOGIN_ATTRIBUTE | uid | 用于绑定用户的属性 |
| DOLI_LDAP_DN | ou=users,dc=my-domain,dc=com | 用户查找的基础DN |
| DOLI_LDAP_FILTER | 授权用户连接的过滤器 | |
| DOLI_LDAP_BIND_DN | 具有用户读取权限的用户完整DN | |
| DOLI_LDAP_BIND_PASS | 绑定用户的密码 | |
| DOLI_LDAP_DEBUG | false | 启用调试模式 |
| DOLI_CRON | 0 | 1:启用cron服务 |
| DOLI_CRON_KEY | 运行cron作业的安全密钥 | |
| DOLI_CRON_USER | cron作业使用的Dolibarr用户 | |
| DOLI_INSTANCE_UNIQUE_ID | 用于某些加密的盐值/密钥,默认在容器创建时随机生成 |
部分环境变量支持Docker密钥功能,只需添加_FILE后缀并指向读取值的文件。支持Docker密钥的环境变量:
DOLI_DB_USER => DOLI_DB_USER_FILEDOLI_DB_PASSWORD => DOLI_DB_PASSWORD_FILEDOLI_ADMIN_LOGIN => DOLI_ADMIN_LOGIN_FILEDOLI_ADMIN_PASSWORD => DOLI_ADMIN_PASSWORD_FILEDOLI_CRON_KEY => DOLI_CRON_KEY_FILEDOLI_CRON_USER => DOLI_CRON_USER_FILEDOLI_INSTANCE_UNIQUE_ID => DOLI_INSTANCE_UNIQUE_ID_FILE可通过挂载卷在部署结束或Apache启动前执行*.sh、*.sql和/或*.php自定义文件。部署期间执行的脚本挂载至/var/www/scripts/docker-init.d,Apache启动前执行的脚本挂载至/var/www/scripts/before-starting.d。
\docker-init.d |- custom_script.sql |- custom_script.php |- custom_script.sh
在Compose文件中挂载卷:
yamlservices: mariadb: image: mariadb:latest environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: dolibarr web: image: tuxgasy/dolibarr environment: DOLI_DB_HOST: mariadb DOLI_DB_USER: root DOLI_DB_PASSWORD: root DOLI_DB_NAME: dolibarr DOLI_URL_ROOT: '[***] PHP_INI_DATE_TIMEZONE: 'Europe/Paris' volumes : - volume-scripts:/var/www/scripts/docker-init.d - before-starting-scripts:/var/www/scripts/before-starting.d ports: - "80:80" links: - mariadb
以下是 tuxgasy/dolibarr 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务