Files
odoocker/docker-compose copy.yml

153 lines
3.4 KiB
YAML
Raw Normal View History

services:
odoo:
build:
context: ./
dockerfile: ./odoo/Dockerfile
args:
- ODOO_TAG
- ODOO_RC
- ROOT_PATH
- GITHUB_USER
- GITHUB_ACCESS_TOKEN
- ENTERPRISE_ADDONS
- THIRD_PARTY_ADDONS
- LOG_PATH
depends_on:
- postgres
tty: true
volumes:
- odoo-data:${DATA_DIR}
- ./odoo/extra-addons:${EXTRA_ADDONS}
- ./odoo/custom-addons:${CUSTOM_ADDONS}
- ./odoo/entrypoint.sh:/entrypoint.sh
environment:
- HOST=${DB_HOST}
- PORT=${DB_PORT}
- USER=${DB_USER}
- PASSWORD=${DB_PASSWORD}
- ODOO_TAG
- ODOO_RC
- THIRD_PARTY_ADDONS
- ODOO_SESSION_REDIS
- ODOO_SESSION_REDIS_HOST
- ODOO_SESSION_REDIS_PORT
- ODOO_SESSION_REDIS_PASSWORD
- ODOO_SESSION_REDIS_URL
- ODOO_SESSION_REDIS_PREFIX
- ODOO_SESSION_REDIS_SENTINEL_MASTER_NAME
- ODOO_SESSION_REDIS_SENTINEL_HOST
- ODOO_SESSION_REDIS_SENTINEL_PORT
- ODOO_SESSION_REDIS_EXPIRATION
- ODOO_SESSION_REDIS_EXPIRATION_ANONYMOUS
- AWS_HOST
- AWS_REGION
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_BUCKETNAME
networks:
- internal
postgres:
build:
context: ./
dockerfile: ./postgres/Dockerfile
args:
- POSTGRES_TAG
restart: unless-stopped
tty: true
volumes:
- pg-data:${PGDATA}
- ./postgres/entrypoint.sh:/docker-entrypoint-initdb.d/entrypoint.sh
environment:
- POSTGRES_DB
- POSTGRES_USER
- POSTGRES_PASSWORD
- PGDATA
- DB_USER
- DB_TEMPLATE
- UNACCENT_TEMPLATE
- PGADMING_DB_NAME
- PGADMING_DB_USER
- PGADMIN_DB_PASSWORD
networks:
- internal
redis:
image: eqalpha/keydb:${KEYDB_TAG}
platform: linux/amd64
ports:
- ${KEYDB_PORT}:${KEYDB_PORT}
restart: unless-stopped
volumes:
- redis-data:${KEYDB_DATA}
networks:
- internal
s3:
image: minio/minio:${MINIO_TAG}
environment:
- MINIO_ROOT_USER
- MINIO_ROOT_PASSWORD
- MINIO_BROWSER_REDIRECT_URL
- VIRTUAL_HOST=${MINIO_VIRTUAL_HOST}
- VIRTUAL_PORT=${MINIO_CONSOLE_PORT}
command: server ${MINIO_DATA} --console-address ":${MINIO_CONSOLE_PORT}"
volumes:
- s3-data:${MINIO_DATA}
ports:
- ${MINIO_API_PORT}:${MINIO_API_PORT}
- ${MINIO_CONSOLE_PORT}:${MINIO_CONSOLE_PORT}
networks:
- internal
nginx:
image: nginx:${NGINX_TAG}
depends_on:
- odoo
restart: unless-stopped
tty: true
expose:
- 80/tcp
volumes:
- ./nginx/nginx.conf:${NGINX_CONF}
- ./nginx/default.conf:${NGINX_DEFAULT_CONF}
environment:
- VIRTUAL_HOST
- LETSENCRYPT_HOST
- LETSENCRYPT_EMAIL
- CORS_ALLOWED_DOMAIN
networks:
- internal
nginx-proxy:
image: nginxproxy/nginx-proxy:${NGINX_PROXY_TAG}
depends_on:
- nginx
restart: unless-stopped
tty: true
volumes:
- ./nginx-proxy/nginx.conf:${NGINX_CONF}
- ./nginx-proxy/cors.conf:${NGINX_PROXY_CORS_CONF}
- certs:${NGINX_CERTS}:ro
- vhost:${NGINX_VHOST}
- html:${NGINX_HTML}
- ${DOCKER_SOCK}:${TEMP_DOCKER_SOCK}:ro
environment:
- TRUST_DOWNSTREAM_PROXY
- CORS_ALLOWED_DOMAIN
networks:
- internal
volumes:
odoo-data:
pg-data:
redis-data:
s3-data:
certs:
vhost:
html:
networks:
internal:
driver: bridge