docker安装odoo17
docker部署
部署数据库
docker network create --driver bridge odoo-net
mkdir /mydata/services/odoo/db
docker run --network odoo-net -d -v /mydata/services/odoo/db:/var/lib/postgresql/data -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo -e POSTGRES_DB=postgres -p 5432:5432 --name db registry.cn-zhangjiakou.aliyuncs.com/nxsc/postgres:15.7
mkdir /mydata/services/odoo
mkdir /mydata/services/odoo/data
mkdir /mydata/services/odoo/config
mkdir /mydata/services/odoo/addons
docker run --network odoo-net -v /mydata/services/odoo/data:/var/lib/odoo -v /mydata/services/odoo/config:/etc/odoo -v /mydata/services/odoo/addons:/mnt/extra-addons -d -p 8069:8069 --name odoo -t registry.cn-zhangjiakou.aliyuncs.com/nxsc/odoo:17
如果启动失败,可以docker logs odoo查看日志
如果日志输出提示缺少odoo.conf配置文件,则执行如下,创建文件并保存,然后重启
vim /mydata/service/odoo/config/odoo.conf
[options]
addons_path = /mnt/extra-addons
admin_passwd = admin
db_host = db
db_port = 5432
db_user = odoo
db_password = odoo
如果继续报db host连接不到,可以执行docker inspect db查看db容器的ip

然后修改上面的odoo.conf配置文件
vim /mydata/service/odoo/config/odoo.conf
[options]
addons_path = /mnt/extra-addons
admin_passwd = admin
db_host = 查询到的IP地址
db_port = 5432
db_user = odoo
db_password = odoo
docker restart odoo重启odoo容器
如果报 Permission denied: '/var/lib/odoo/.local'错误,则执行如下
sudo chown -R 777 /mydata/services/odoo/data
docker-compose
手动安装
- 下载 Docker Compose
访问 Docker Compose GitHub 仓库 找到最新版本的二进制文件,并使用 curl 命令下载。例如,下载 v2.32.1 版本的命令如下:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.32.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
如果下载失败,可以手动下载Docker Compose二进制文件。
可以从Docker官方提供的二进制文件下载页面(https://github.com/docker/compose/releases)获取最新版本的Docker Compose。
然后上传到/usr/local/bin目录,重命名为docker-compose
- 赋予执行权限:
sudo chmod +x /usr/local/bin/docker-compose
- 验证安装:
docker-compose --version
部署odoo
在/mydata/services/odoo目录创建compose.yml文件
vim /mydata/services/odoo/compose.yml
输入如下内容保存
services:
odoo-web:
image: registry.cn-zhangjiakou.aliyuncs.com/nxsc/odoo:17.0
depends_on:
- odoo-db
ports:
- "8069:8069"
volumes:
- /mydata/services/odoo/data:/var/lib/odoo
- /mydata/services/odoo/config:/etc/odoo
- /mydata/services/odoo/addons:/mnt/extra-addons
environment:
- ODOO_DB_HOST=odoo-db
- ODOO_DB_PORT=5432
- ODOO_DB_USER=odoo
- ODOO_DB_PASSWORD=odoo
restart: on-failure
odoo-db:
image: registry.cn-zhangjiakou.aliyuncs.com/nxsc/postgres:15.7
ports:
- "5432:5432"
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=odoo
volumes:
- /mydata/services/odoo/db:/var/lib/postgresql/data
restart: on-failure
使用docker-compose启动运行
cd /mydata/services/odoo
docker-compose up -d

浙公网安备 33010602011771号