本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

以下是当前支持的镜像标签及其 Dockerfile 链接:
19.0-20251008, 19.0, 19, latest18.0-20251008, 18.0, 1817.0-20251008, 17.0, 17amd64、arm64v8、ppc64lerepos/odoo/ 目录(历史记录)查看(包括元数据、传输大小等)。library/odoo 标签 或 文件(历史记录)跟踪。odoo/ 目录(历史记录)Odoo(前身为 OpenERP)是一套开源业务应用套件,采用 Python 开发,基于 LGPL 许可证发布。该套件覆盖从网站/电商到制造、库存、会计等全业务流程,且各模块无缝集成,是目前功能覆盖最全面的企业软件之一。全球有超过 200 万用户使用 Odoo,涵盖从单人小微企业到 30 万用户的大型企业。
官网:[***]
使用 Odoo 镜像需配合运行中的 PostgreSQL 服务器。
先运行 PostgreSQL 容器,设置数据库用户、密码和初始数据库:
$ docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name db postgres:15
通过 --link 连接到 PostgreSQL 容器(容器别名必须为 db,Odoo 才能自动识别):
$ docker run -p 8069:8069 --name odoo --link db:db -t odoo
启动后,访问 `[***] 即可打开 Odoo。
$ docker stop odoo
$ docker start -a odoo
默认情况下,Odoo 的文件存储(如附件)位于容器内部,删除容器会丢失数据。推荐使用 命名卷 持久化数据:
$ docker run -v odoo-data:/var/lib/odoo -d -p 8069:8069 --name odoo --link db:db -t odoo
odoo-data 为命名卷,即使删除容器也会保留数据,下次启动时可复用。/var/lib/odoo 需与 Odoo 配置文件中的 data_dir 一致。同理,为 PostgreSQL 数据目录挂载命名卷,避免数据库丢失:
$ docker run -d -v odoo-db:/var/lib/postgresql/data -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres --name db postgres:15
Odoo 默认配置文件位于 /etc/odoo/odoo.conf,可通过挂载本地配置文件覆盖:
$ docker run -v /path/to/your/config:/etc/odoo -p 8069:8069 --name odoo --link db:db -t odoo
配置文件模板参考:官方模板(已包含 Docker 环境必要参数)。
在命令末尾添加 -- 后接 Odoo 参数,例如过滤数据库:
$ docker run -p 8069:8069 --name odoo --link db:db -t odoo -- --db-filter=odoo_db_.*
将本地插件目录挂载到容器的 /mnt/extra-addons,Odoo 会自动加载:
$ docker run -v /path/to/your/addons:/mnt/extra-addons -p 8069:8069 --name odoo --link db:db -t odoo
注意:即使没有官方企业版镜像,也可通过此方式挂载 Odoo Enterprise 模块。
通过映射不同主机端口,可启动多个 Odoo 实例(均连接同一 PostgreSQL):
$ docker run -p 8070:8069 --name odoo2 --link db:db -t odoo # 第二个实例,端口 8070 $ docker run -p 8071:8069 --name odoo3 --link db:db -t odoo # 第三个实例,端口 8071
注意:若主机端口与容器端口不同(如 8070:8069),需在 Odoo 中设置
Settings->Parameters->System Parameters(需开启开发者模式),将web.base.url设为容器端口(如127.0.0.1:8069),否则邮件、报表功能可能异常。
通过环境变量自定义 PostgreSQL 连接信息(无需修改配置文件):
| 变量名 | 说明 | 默认值 |
|---|---|---|
HOST | PostgreSQL 服务器地址(容器名或 IP) | db |
PORT | PostgreSQL 端口 | 5432 |
USER | 数据库连接用户(需与 PostgreSQL 配置一致) | odoo |
PASSWORD | 数据库连接密码(需与 PostgreSQL 配置一致) | odoo |
示例:连接自定义 PostgreSQL 服务器
$ docker run -e HOST=192.168.1.100 -e USER=myuser -e PASSWORD=mypass -p 8069:8069 --name odoo -t odoo
使用 compose.yaml 简化多容器管理,以下是常见场景配置。
services: web: image: odoo:17.0 # 指定 Odoo 版本 depends_on: [db] # 依赖 db 服务 ports: ["8069:8069"] db: image: postgres:15 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD=odoo - POSTGRES_USER=odoo
services: web: image: odoo:17.0 depends_on: [mydb] ports: ["8069:8069"] environment: - HOST=mydb # 连接名为 mydb 的 PostgreSQL 服务 - USER=odoo # 数据库用户 - PASSWORD=myodoo # 数据库密码 mydb: image: postgres:15 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD=myodoo # 与 web 服务的 PASSWORD 一致 - POSTGRES_USER=odoo # 与 web 服务的 USER 一致
services: web: image: odoo:17.0 depends_on: [db] ports: ["8069:8069"] volumes: - odoo-web-data:/var/lib/odoo # Odoo 数据卷 - ./config:/etc/odoo # 挂载自定义配置(本地 ./config 目录) - ./addons:/mnt/extra-addons # 挂载自定义插件(本地 ./addons 目录) environment: - PASSWORD_FILE=/run/secrets/postgresql_password # 从 secret 文件读取密码 secrets: - postgresql_password db: image: postgres:15 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD_FILE=/run/secrets/postgresql_password # 从 secret 文件读取密码 - POSTGRES_USER=odoo - PGDATA=/var/lib/postgresql/data/pgdata # PostgreSQL 数据路径 volumes: - odoo-db-data:/var/lib/postgresql/data/pgdata # PostgreSQL 数据卷 secrets: - postgresql_password volumes: odoo-web-data: # Odoo 数据卷(自动创建) odoo-db-data: # PostgreSQL 数据卷(自动创建) secrets: postgresql_password: file: odoo_pg_pass # 本地密码文件(仅含密码字符串)
启动命令:在 compose.yaml 所在目录执行
$ docker compose up -d
Odoo 镜像每日更新(同步 nightly 版本)。以下步骤适用于同一主版本内的升级(如从 17.0 旧版本升级到 17.0 最新版本),跨主版本升级需参考 Odoo 官方升级文档 或 OpenUpgrade 项目。
old-odoo,需保留其文件存储(Odoo 16.0+ 附件默认存储在 /var/lib/odoo/filestore/)。--volumes-from 复用旧实例的文件存储:
$ docker run --volumes-from old-odoo -p 8070:8069 --name new-odoo --link db:db -t odoo
镜像中 Odoo 软件的许可证信息见 Odoo 源码仓库 LICENSE 文件。
Docker 镜像可能包含基础系统(如 Bash)及依赖软件,其许可证可能不同。更多信息可参考 repo-info 仓库的 odoo/ 目录。
使用前请确保遵守所有软件的许可证要求。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429