Files
Odoo-Build/compose.yml.template
T

165 lines
5.0 KiB
Plaintext

name: odoo-build
services:
odoo:
container_name: odoo
image: "${CONTAINER_REGISTRY}/${CONTAINER_TAG}"
depends_on:
db:
condition: service_healthy
environment:
HOST: db
USER: odoo
PASSWORD: odoo
PORT: 5432
PGHOST: db
PGUSER: odoo
PGPASSWORD: odoo
PGPORT: 5432
DB_MAXCONN: ${DB_MAXCONN}
PGSSLMODE: ${PGSSLMODE}
PGSSLROOTCERT: "/mnt/postgres-odoo/ca.crt"
SMTP_SERVER: ${SMTP_SERVER}
SMTP_PORT: ${SMTP_PORT}
SMTP_SSL: ${SMTP_SSL}
SMTP_USER: ${SMTP_USER}
SMTP_PASSWORD: ${SMTP_PASSWORD}
EMAIL_FROM: ${EMAIL_FROM}
MAIL_BOUNCE_ALIAS: ${MAIL_BOUNCE_ALIAS}
MAIL_CATCHALL_ALIAS: ${MAIL_CATCHALL_ALIAS}
MAIL_CATCHALL_DOMAIN: ${MAIL_CATCHALL_DOMAIN}
MAIL_DEFAULT_FROM: ${MAIL_DEFAULT_FROM}
MAIL_ALIAS_DOMAIN: ${MAIL_ALIAS_DOMAIN}
ODOO_MAIL_SMTP_HOST: ${ODOO_MAIL_SMTP_HOST}
ODOO_MAIL_SMTP_PORT: ${ODOO_MAIL_SMTP_PORT}
ODOO_MAIL_SMTP_ENCRYPTION: ${ODOO_MAIL_SMTP_ENCRYPTION}
ODOO_MAIL_SMTP_FROM_FILTER: ${ODOO_MAIL_SMTP_FROM_FILTER}
ODOO_MAIL_IMAP_HOST: ${ODOO_MAIL_IMAP_HOST}
ODOO_MAIL_IMAP_PORT: ${ODOO_MAIL_IMAP_PORT}
ODOO_MAIL_IMAP_SSL: ${ODOO_MAIL_IMAP_SSL}
ODOO_MAIL_USERNAME: ${ODOO_MAIL_USERNAME}
ODOO_MAIL_PASSWORD: ${ODOO_MAIL_PASSWORD}
GIT_SSH_PUBLIC_KEY: ${GIT_SSH_PUBLIC_KEY}
GIT_SSH_PRIVATE_KEY: ${GIT_SSH_PRIVATE_KEY}
GITHUB_USERNAME: ${GITHUB_USERNAME}
GITHUB_PERSONAL_ACCESS_TOKEN: ${GITHUB_PERSONAL_ACCESS_TOKEN}
ADDONS_GIT_REPOS: ${ADDONS_GIT_REPOS}
ODOO_ADDONS_PATH: ${ODOO_ADDONS_PATH}
ODOO_DATABASE: "${ODOO_DATABASE}"
ODOO_INIT_DEMO_DATA: "${ODOO_INIT_DEMO_DATA}"
ODOO_INIT_LOGIN: ${ODOO_INIT_LOGIN}
ODOO_INIT_PASSWORD: ${ODOO_INIT_PASSWORD}
ODOO_INIT_LANG: ${ODOO_INIT_LANG}
ODOO_INIT_ADDONS: ${ODOO_INIT_ADDONS}
ENVIRONMENT: ${ENVIRONMENT}
PYTHON_INSTALL: ${PYTHON_INSTALL}
SERVER_WIDE_MODULES: ${SERVER_WIDE_MODULES}
SESSION_DB_URI: ${SESSION_DB_URI}
PROXY_MODE: ${PROXY_MODE}
LOG_LEVEL: ${LOG_LEVEL}
LIST_DB: ${LIST_DB}
LOG_DB: ${LOG_DB}
LOG_HANDLER: ${LOG_HANDLER}
LOGFILE: ${LOGFILE}
ADMIN_PASSWD: ${ADMIN_PASSWD}
DBFILTER: ${DBFILTER}
WORKERS: ${WORKERS}
LIMIT_REQUEST: ${LIMIT_REQUEST}
LIMIT_TIME_CPU: ${LIMIT_TIME_CPU}
LIMIT_TIME_REAL: ${LIMIT_TIME_REAL}
LIMIT_MEMORY_HARD: ${LIMIT_MEMORY_HARD}
LIMIT_MEMORY_SOFT: ${LIMIT_MEMORY_SOFT}
LIMIT_MEMORY_HARD_GEVENT: ${LIMIT_MEMORY_HARD_GEVENT}
LIMIT_MEMORY_SOFT_GEVENT: ${LIMIT_MEMORY_SOFT_GEVENT}
MODULE_AUTO_INSTALL_DISABLED: ${MODULE_AUTO_INSTALL_DISABLED}
AUTO_UPDATE_MODULES: "${AUTO_UPDATE_MODULES}"
TEST_ADDONS_DIR: ${TEST_ADDONS_DIR}
TEST_INCLUDE: ${TEST_INCLUDE}
TEST_EXCLUDE: ${TEST_EXCLUDE}
AUTO_UPDATE_TRANSLATIONS: "${AUTO_UPDATE_TRANSLATIONS}"
AUTO_UPDATE_MODULES_LIST: "${AUTO_UPDATE_MODULES_LIST}"
command: odoo --dev=all
ports:
- "${ODOO_PORT}:8069"
volumes:
- odoo-data:/var/lib/odoo
- ./tmp/postgres-odoo:/mnt/postgres-odoo
- ./addons:/mnt/addons
- ./oca:/mnt/oca
- ./enterprise:/mnt/enterprise
- ./themes:/mnt/themes
- ./thirdparty:/mnt/thirdparty
networks:
- default
admin:
container_name: admin
image: docker.io/dpage/pgadmin4:6
depends_on:
- db
ports:
- "8000:80"
environment:
PGADMIN_DEFAULT_EMAIL: admin@example.com
PGADMIN_DEFAULT_PASSWORD: admin
volumes:
- admin-data:/var/lib/pgadmin
- ./servers.json:/pgadmin4/servers.json
networks:
- default
db:
container_name: db
image: ${POSTGRES_IMAGE}
ports:
- "${POSTGRES_PORT}:5432"
environment:
POSTGRES_USER: odoo
POSTGRES_PASSWORD: odoo
POSTGRES_DB: "${ODOO_DATABASE}"
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- db-data:/var/lib/postgresql/data/pgdata
- ./tmp/postgres-odoo:/mnt/postgres-odoo/
command:
[
"postgres",
"-c", "ssl=${POSTGRES_SSL}",
"-c", "ssl_cert_file=/mnt/postgres-odoo/server.crt",
"-c", "ssl_key_file=/mnt/postgres-odoo/server.key",
"-c", "ssl_ca_file=/mnt/postgres-odoo/ca.crt"
]
networks:
- default
healthcheck:
test: ["CMD-SHELL", "pg_isready -U odoo -d $ODOO_DATABASE"]
interval: 5s
timeout: 5s
retries: 5
mailpit:
image: docker.io/axllent/mailpit
container_name: mailpit
hostname: mailpit
ports:
- "1025:1025"
- "8025:8025"
networks:
- default
mailgate:
image: mintsystem/odoo-mailgate
container_name: mailgate
hostname: mailgate
ports:
- "25:25"
- "587:587"
environment:
ODOO_DATABASE: "${ODOO_DATABASE}"
MAIL_ALIASES: "${MAIL_ALIASES}"
networks:
- default
volumes:
odoo-data:
db-data:
admin-data:
mail-data:
networks:
default:
name: odoo-build_default