Files
appstore/apps/odoo/latest/docker-compose.yml
T
2026-06-28 01:55:35 +08:00

75 lines
2.1 KiB
YAML

services:
odoo:
image: "odoo:19.0"
container_name: ${CONTAINER_NAME}
user: root
restart: always
depends_on:
odoo-db:
condition: service_healthy
networks:
- 1panel-network
- odoo-network
ports:
- "${PANEL_APP_PORT_HTTP}:8069"
entrypoint:
- /bin/bash
- -c
command:
- |
set -e
install -d -o odoo -g odoo -m 775 /var/lib/odoo /var/lib/odoo/sessions /mnt/extra-addons
if [ ! -f /var/lib/odoo/.1panel-permissions-ok ] || [ "$(stat -c '%u:%g' /var/lib/odoo)" != "100:101" ]; then
chown -R odoo:odoo /var/lib/odoo /mnt/extra-addons
touch /var/lib/odoo/.1panel-permissions-ok
chown odoo:odoo /var/lib/odoo/.1panel-permissions-ok
fi
{
printf '%s\n' '[options]'
printf '%s\n' 'addons_path = /mnt/extra-addons'
printf '%s\n' 'data_dir = /var/lib/odoo'
printf 'admin_passwd = %s\n' "$${ODOO_MASTER_PASSWORD}"
} > /var/lib/odoo/odoo.conf
chown odoo:odoo /var/lib/odoo/odoo.conf
chmod 600 /var/lib/odoo/odoo.conf
exec setpriv --reuid=odoo --regid=odoo --init-groups /entrypoint.sh odoo server -c /var/lib/odoo/odoo.conf
environment:
- TZ=${TZ}
- HOST=odoo-db
- PORT=5432
- USER=odoo
- PASSWORD=${POSTGRES_PASSWORD}
- ODOO_MASTER_PASSWORD=${ODOO_MASTER_PASSWORD}
volumes:
- "${APP_DATA_DIR}/odoo-data:/var/lib/odoo"
- "${APP_DATA_DIR}/addons:/mnt/extra-addons"
labels:
createdBy: "Apps"
odoo-db:
image: "postgres:15"
container_name: ${CONTAINER_NAME}-db
restart: always
networks:
- odoo-network
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- "${APP_DATA_DIR}/postgres:/var/lib/postgresql/data/pgdata"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U odoo -d postgres"]
interval: 10s
timeout: 5s
retries: 10
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true
odoo-network:
driver: bridge