如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Mint System Odoo 镜像是对官方Odoo镜像的改进版本,基于特定修订版本构建,确保构建可重复性。该镜像优化了包管理、配置方式、插件处理等核心功能,同时集成多种开发与运维工具,适合Odoo应用的部署、测试及日常管理。
odoo.conf配置,无需手动修改配置文件19.0.20251008、19.018.0.20251008、18.017.0.20251008、17.016.0.20251008、16.0该镜像支持基础配置与高度自定义配置,可通过环境变量灵活调整。
以下是最小化compose.yml配置示例:
ymlservices: odoo: container_name: odoo image: mintsystem/odoo:18.0.20251008 depends_on: - db environment: PGHOST: db PGUSER: odoo PGPASSWORD: odoo ports: - "127.0.0.1:8069:8069" volumes: - odoo-data:/var/lib/odoo db: container_name: db image: postgres:14-alpine environment: POSTGRES_USER: odoo POSTGRES_PASSWORD: odoo PGDATA: /var/lib/postgresql/data/pgdata volumes: - db-data:/var/lib/postgresql/data/pgdata volumes: odoo-data: db-data:
以下compose.yml展示完整自定义配置选项:
ymlservices: odoo: container_name: odoo image: mintsystem/odoo:18.0.20251008 depends_on: db: condition: service_healthy environment: PGHOST: db PGUSER: odoo PGPASSWORD: odoo PGPORT: 5432 DB_NAME: odoo DB_MAXCONN: 128 PGSSLMODE: verify-ca PGSSLROOTCERT: /mnt/postgres-secret/ca.crt SMTP_SERVER: mail.infomaniak.com SMTP_PORT: 587 SMTP_SSL: True SMTP_USER: odoo@yourcompany.com SMTP_PASSWORD: ** EMAIL_FROM: odoo@yourcompany.com MAIL_BOUNCE_ALIAS: bounce MAIL_CATCHALL_ALIAS: reply MAIL_CATCHALL_DOMAIN: yourcompany.com MAIL_DEFAULT_FROM: odoo MAIL_ALIAS_DOMAIN: yourcompany.com ODOO_MAIL_SMTP_HOST: mail.infomaniak.com ODOO_MAIL_SMTP_PORT: 587 ODOO_MAIL_SMTP_ENCRYPTION: starttls ODOO_MAIL_SMTP_FROM_FILTER: odoo@yourcompany.com ODOO_MAIL_IMAP_HOST: mail.infomaniak.com ODOO_MAIL_IMAP_PORT: 993 ODOO_MAIL_IMAP_SSL: True ODOO_MAIL_USERNAME: odoo@yourcompany.com ODOO_MAIL_PASSWORD: ** GIT_SSH_PUBLIC_KEY: "ssh-ed25519 BBBBC3NzaC1lZDI1NTE5BBBBIDR9Ibi0mATjCyx1EYg594oFkY0rghtgo+pnFHOvAcym Mint-System-Project-MCC@github.com" GIT_SSH_PRIVATE_KEY: "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVEUgS0VZLS0tLQpiM0JsYm5OemFDMXJaWGt0ZGpFQUFBQUFCRzV2Ym1VQUFBQUVibTl1WlFBQUFBQUFBQUFCQUFBQU13QUFBQXR6YzJndFpXClF5TlRVeE9RQUFBQ0EwZlNHNHRKZ0U0d3NzZFJHSU9mZUtCWkdOSzRJYllLUHFaeFJ6cndITXBnQUFBS2k1WkJhRnVXUVcKaFFBQUFBdHpjMmd0WldReU5UVXhPUUFBQUNBMGZTRzR0SmdFNHdzc2RSR0lPZmVLQlpTks0SWJZS1BxWnhSenJ3SE1wZwowQkFnTT0KLS0tLS1FTkQgT1BFTlNTSCBQUklWQVRFIEtFWS0tLS0tCg==" GITHUB_USERNAME: bot-mintsys GITHUB_PAT: ** GITLAB_URL: https://gitlab.com GITLAB_USERNAME: bot-mintsys GITLAB_PAT: ** FORGEJO_URL: https://codeberg.org FORGEJO_USERNAME: bot-mintsys FORGEJO_PAT: ** ADDONS_GIT_REPOS: "git@github.com:Mint-System/Odoo-Apps-Server-Tools.git#16.0,git@github.com:OCA/server-tools.git#16.0" ODOO_ADDONS_PATH: /mnt/addons/,/mnt/enterprise/,/mnt/oca/,/mnt/themes/ ODOO_DATABASE: "16.0" ODOO_INIT_LOGIN: odoo ODOO_INIT_PASSWORD: ** ODOO_INIT_LANG: de_CH ODOO_INIT_ADDONS: server_environment_ir_config_parameter RUNNING_ENV: production WITHOUT_DEMO: False PYTHON_INSTALL: prometheus-client SERVER_WIDE_MODULES: session_db,module_change_auto_install SESSION_DB_URI: postgres://odoo:odoo@db/16.0 PROXY_MODE: False LOG_LEVEL: debug MAX_CRON_THREADS: 4 LIST_DB: True LOG_DB: True LOG_HANDLER: [':INFO'] LOGFILE: None ADMIN_PASSWD: ** DB_FILTER: ^%d$ WORKERS: 4 LIMIT_REQUEST: 16384 LIMIT_TIME_CPU: 300 LIMIT_TIME_REAL: 600 LIMIT_MEMORY_HARD: 2684354560 LIMIT_MEMORY_SOFT: 2147483648 LIMIT_MEMORY_HARD_GEVENT: 1048579 LIMIT_MEMORY_SOFT_GEVENT: 1048576 MODULE_AUTO_INSTALL_DISABLED: odoo_test_xmlrunner AUTO_UPDATE_MODULES: True TEST_ADDONS_DIR: /mnt/oca/partner-contact TEST_INCLUDE: partner_firstname TEST_EXCLUDE: partner_fax AUTO_UPDATE_TRANSLATIONS: True AUTO_UPDATE_MODULES_LIST: True ADDITIONAL_ODOO_RC: "syslog = True" IR_CONFIG_PARAMETER: "web.base.url = https://odoo.example.com" ports: - "127.0.0.1:8069:8069" volumes: - odoo-data:/var/lib/odoo - ./addons:/mnt/addons - ./oca:/mnt/oca - ./enterprise:/mnt/enterprise - ./themes:/mnt/themes db: container_name: db image: postgres:14-alpine environment: POSTGRES_USER: odoo POSTGRES_PASSWORD: odoo PGDATA: /var/lib/postgresql/data/pgdata volumes: - db-data:/var/lib/postgresql/data/pgdata healthcheck: test: ["CMD-SHELL", "pg_isready -U odoo -d $ODOO_DATABASE"] interval: 5s timeout: 5s retries: 5 volumes: odoo-data: db-data:
该镜像设计了完整的生命周期管理,包括初始化、启动、执行、分析和测试阶段。
容器启动前可通过以下脚本初始化数据库和插件:
下载Odoo企业版模块:
bashdocker compose exec odoo download-git-archive
克隆插件仓库:
bashdocker compose exec odoo clone-git-addons
初始化Odoo数据库:
bashdocker compose exec odoo init-db
容器启动时,entrypoint.sh脚本将自动执行以下步骤:
aggregate-git-repos克隆模块仓库template-odoo-rc生成odoo.conf配置文件set-addons-path组装插件路径install-python-packages安装Python依赖update-modules更新模块update-modules-list更新模块列表update-translations更新翻译容器运行中可执行以下操作管理模块:
安装模块:
bashdocker compose exec odoo init-module partner_firstname
更新指定模块:
bashdocker compose exec odoo update-module partner_firstname
更新所有模块:
bashdocker compose exec odoo update-modules
更新模块列表:
bashdocker compose exec odoo update-modules-list
更新翻译:
bashdocker compose exec odoo update-translations
使用内置manifestoo工具查询模块清单文件,例如列出所有模块:
bashdocker exec odoo bash -c "manifestoo --select-found list --separator=,"
执行以下步骤运行模块测试并生成覆盖率报告:
准备测试环境:
bashdocker exec odoo setup-tests
运行测试:
bashdocker exec odoo run-tests
| 变量名 | 描述 | 默认值 |
|---|---|---|
PGHOST | 数据库容器名称 | - |
PGUSER | 数据库用户名 | - |
PGPASSWORD | 数据库用户密码 | - |
PGPORT | PostgreSQL端口 | 5432 |
DB_NAME | 数据库名称 | - |
DB_MAXCONN | 最大数据库连接数 | 64 |
PGSSLMODE | SSL连接模式 | prefer |
PGSSLROOTCERT | SSL根证书路径 | - |
| 变量名 | 描述 | 默认值 |
|---|---|---|
SMTP_SERVER | SMTP服务器地址 | - |
SMTP_PORT | SMTP端口 | - |
SMTP_SSL | 是否启用SSL | - |
SMTP_USER | SMTP用户名 | - |
SMTP_PASSWORD | SMTP密码 | - |
EMAIL_FROM | 发件人*** | - |
| 变量名 | 描述 | 默认值 |
|---|---|---|
MAIL_BOUNCE_ALIAS | 退信别名 | - |
MAIL_CATCHALL_ALIAS | 回复别名 | - |
MAIL_CATCHALL_DOMAIN | 回复域名 | - |
MAIL_DEFAULT_FROM | 默认发件人名称 | odoo |
MAIL_ALIAS_DOMAIN | 别名域名 | - |
| 变量名 | 描述 | 默认值 |
|---|---|---|
ODOO_MAIL_SMTP_HOST | SMTP主机 | - |
ODOO_MAIL_SMTP_PORT | SMTP端口 | 587 |
ODOO_MAIL_SMTP_ENCRYPTION | 加密方式 | starttls |
ODOO_MAIL_SMTP_FROM_FILTER | 发件人过滤 | "" |
ODOO_MAIL_IMAP_HOST | IMAP主机 | - |
ODOO_MAIL_IMAP_PORT | IMAP端口 | 993 |
ODOO_MAIL_IMAP_SSL | 是否启用IMAP SSL | True |
ODOO_MAIL_USERNAME | ***用户名 | - |
ODOO_MAIL_PASSWORD | ***密码 | - |
| 变量名 | 描述 | 默认值 |
|---|---|---|
GIT_SSH_PUBLIC_KEY | SSH公钥,用于Git克隆 | - |
GIT_SSH_PRIVATE_KEY | Base64编码的SSH私钥(生成方式:`cat ~/.ssh/id_ed2551 | base64 -w0`) |
GITHUB_USERNAME | GitHub用户名 | - |
GITHUB_PAT | GitHub访问令牌 | - |
GITLAB_URL | GitLab实例URL | https://gitlab.com |
GITLAB_USERNAME | GitLab用户名 | - |
GITLAB_PAT | GitLab访问令牌 | - |
FORGEJO_URL | Forgejo实例URL | https://codeberg.org |
FORGEJO_USERNAME | Forgejo用户名 | - |
FORGEJO_PAT | Forgejo访问令牌 | - |
ADDONS_GIT_REPOS | 逗号分隔的Git仓库列表(格式:仓库URL#分支) | - |
| 变量名 | 描述 | 默认值 |
|---|---|---|
ODOO_ADDONS_PATH | 插件路径列表(逗号分隔) | /mnt/extra-addons,/opt/odoo/enterprise,/var/lib/odoo/git,$TEST_ADDONS_DIR,/opt/odoo/addons |
| 变量名 | 描述
以下是 mintsystem/odoo 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



来自真实用户的反馈,见证轩辕镜像的优质服务