mirror of
				https://github.com/odoocker/odoocker
				synced 2025-11-04 07:19:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			409 lines
		
	
	
		
			9.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			409 lines
		
	
	
		
			9.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#--------------------------#
 | 
						|
#    Main Configuration    #
 | 
						|
#--------------------------#
 | 
						|
# Odoo
 | 
						|
APP_ENV=local
 | 
						|
INIT=
 | 
						|
UPDATE=
 | 
						|
LOAD=base,web
 | 
						|
ROOT_PATH=/usr/lib/python3/dist-packages/odoo
 | 
						|
WORKERS=0
 | 
						|
DEV_MODE=reload,xml
 | 
						|
DOMAIN=erp.odoocker.test
 | 
						|
ADMIN_PASSWD=odoo
 | 
						|
 | 
						|
# Services
 | 
						|
PROJECT_NAME=odoocker
 | 
						|
SERVICES=odoo,nginx,proxy,postgres
 | 
						|
 | 
						|
# Service configuration
 | 
						|
USE_REDIS=false
 | 
						|
USE_S3=false
 | 
						|
USE_SENTRY=false
 | 
						|
USE_PGADMIN=false
 | 
						|
 | 
						|
# Enterprise
 | 
						|
GITHUB_USER=
 | 
						|
GITHUB_ACCESS_TOKEN=
 | 
						|
 | 
						|
# Database
 | 
						|
DB_HOST=postgres
 | 
						|
DB_PORT=5432
 | 
						|
DB_NAME=
 | 
						|
DB_USER=odoo
 | 
						|
DB_PASSWORD=odoo
 | 
						|
LOAD_LANGUAGE=
 | 
						|
 | 
						|
DB_SSLMODE=prefer
 | 
						|
DB_MAXCONN=64
 | 
						|
DB_TEMPLATE=unaccent_template
 | 
						|
UNACCENT=False
 | 
						|
LIST_DB=True
 | 
						|
DBFILTER=.*
 | 
						|
 | 
						|
# Logging
 | 
						|
LOG_LEVEL=info
 | 
						|
# Additional logs
 | 
						|
LOG_HANDLER_LEVEL=INFO
 | 
						|
# Sentry
 | 
						|
SENTRY_DSN=
 | 
						|
SENTRY_ENABLED=true
 | 
						|
SENTRY_LOGGING_LEVEL=warn
 | 
						|
SENTRY_EXCLUDE_LOGGERS=
 | 
						|
SENTRY_IGNORE_EXCEPTIONS=
 | 
						|
SENTRY_INCLUDE_CONTEXT=true
 | 
						|
SENTRY_ENVIRONMENT=production
 | 
						|
SENTRY_RELEASE=
 | 
						|
SENTRY_ODOO_DIR=${ROOT_PATH}
 | 
						|
 | 
						|
# Nginx
 | 
						|
CORS_ALLOWED_DOMAIN="'http://external-domain.test'"
 | 
						|
 | 
						|
# Testing
 | 
						|
TEST_ENABLE=False
 | 
						|
TEST_TAGS=
 | 
						|
ADDONS_TO_TEST=
 | 
						|
 | 
						|
# Mail
 | 
						|
SMTP_SERVER=
 | 
						|
SMTP_PORT=25
 | 
						|
SMTP_SSL=
 | 
						|
SMTP_USER=
 | 
						|
SMTP_PASSWORD=
 | 
						|
EMAIL_FROM=
 | 
						|
FROM_FILTER=
 | 
						|
 | 
						|
# Postgres
 | 
						|
POSTGRES_MAIN_HOST=${DB_HOST}
 | 
						|
POSTGRES_MAIN_PORT=${DB_PORT}
 | 
						|
POSTGRES_MAIN_DB=postgres
 | 
						|
POSTGRES_MAIN_USER=postgres
 | 
						|
POSTGRES_MAIN_PASSWORD=${DB_PASSWORD}
 | 
						|
 | 
						|
# Redis
 | 
						|
SESSION_REDIS=true
 | 
						|
REDIS_HOST=redis
 | 
						|
REDIS_PORT=6379
 | 
						|
REDIS_PASSWORD=
 | 
						|
REDIS_URL=
 | 
						|
REDIS_PREFIX=${PROJECT_NAME}
 | 
						|
REDIS_SENTINEL_MASTER_NAME=
 | 
						|
REDIS_SENTINEL_HOST=
 | 
						|
REDIS_SENTINEL_PORT=26379
 | 
						|
REDIS_EXPIRATION=604800
 | 
						|
REDIS_EXPIRATION_ANONYMOUS=10800
 | 
						|
 | 
						|
# Filesystem
 | 
						|
S3_VIRTUAL_HOST=s3.odoocker.test
 | 
						|
S3_API_PORT=9000
 | 
						|
S3_CONSOLE_PORT=9001
 | 
						|
 | 
						|
AWS_HOST=http://s3:${S3_API_PORT}
 | 
						|
AWS_REGION=
 | 
						|
AWS_ACCESS_KEY_ID=myaccesskey
 | 
						|
AWS_SECRET_ACCESS_KEY=mysecretkey
 | 
						|
AWS_BUCKETNAME=${PROJECT_NAME}-{db}
 | 
						|
 | 
						|
# PgAdmin
 | 
						|
PGADMIN_DOMAIN=pgadmin.odoocker.test
 | 
						|
PGADMING_DB_NAME=pgadmin
 | 
						|
PGADMING_DB_USER=pgadmin
 | 
						|
PGADMIN_DB_PASSWORD=${DB_PASSWORD}
 | 
						|
PGADMIN_DB_HOST="'postgresql://${PGADMING_DB_USER}:${PGADMIN_DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${PGADMING_DB_NAME}'"
 | 
						|
 | 
						|
PGADMIN_EMAIL=pgadmin@example.com
 | 
						|
PGADMIN_PASSWORD=pgadmin
 | 
						|
 | 
						|
# To import servers use /pgadmin4/servers.json on first build, then remove.
 | 
						|
PGADMIN_SERVERS_JSON=
 | 
						|
PGADMIN_CONFIG_SERVER_MODE=True
 | 
						|
 | 
						|
#------------------------------#
 | 
						|
#    Project Configurations    #
 | 
						|
#------------------------------#
 | 
						|
# Docker
 | 
						|
PROJECT_NAME=${PROJECT_NAME}
 | 
						|
SUPPORT_EMAIL=mail@example.com
 | 
						|
 | 
						|
# Service configuration
 | 
						|
USE_REDIS=${USE_REDIS}
 | 
						|
USE_S3=${USE_S3}
 | 
						|
USE_SENTRY=${USE_SENTRY}
 | 
						|
USE_PGADMIN=${USE_PGADMIN}
 | 
						|
 | 
						|
# Which services are going to be brought up
 | 
						|
COMPOSE_PROFILES=${SERVICES}
 | 
						|
 | 
						|
# Service profiles
 | 
						|
ODOO_PROFILES="odoo"
 | 
						|
POSTGRES_PROFILES="postgres"
 | 
						|
NGINX_PROFILES="nginx"
 | 
						|
NGINX_PROXY_PROFILES="proxy"
 | 
						|
ACME_COMPANION_PROFILES="acme"
 | 
						|
KEYDB_PROFILES="keydb"
 | 
						|
MINIO_PROFILES="minio"
 | 
						|
PGADMIN_PROFILES="pgadmin"
 | 
						|
 | 
						|
# Containers' Tags
 | 
						|
ODOO_TAG=17.0
 | 
						|
POSTGRES_TAG=16.1
 | 
						|
KEYDB_TAG=latest
 | 
						|
MINIO_TAG=latest
 | 
						|
NGINX_TAG=1.25.3
 | 
						|
NGINX_PROXY_TAG=1.4.0
 | 
						|
ACME_COMPANION_TAG=2.2.9
 | 
						|
PGADMIN_TAG=8.1
 | 
						|
 | 
						|
# Odoocker paths
 | 
						|
COMMUNITY_ADDONS=${ROOT_PATH}/addons
 | 
						|
ENTERPRISE_ADDONS=${ROOT_PATH}/enterprise
 | 
						|
THIRD_PARTY_ADDONS=${ROOT_PATH}/third-party-addons
 | 
						|
EXTRA_ADDONS=${ROOT_PATH}/extra-addons
 | 
						|
CUSTOM_ADDONS=${ROOT_PATH}/custom-addons
 | 
						|
LOG_PATH=/var/log/odoo/odoo.log
 | 
						|
DEBUG_PATH=/usr/bin/odoo
 | 
						|
 | 
						|
#------------#
 | 
						|
#    Odoo    #
 | 
						|
#------------#
 | 
						|
# Options not exposed on the command line.
 | 
						|
ADMIN_PASSWD=${ADMIN_PASSWD}
 | 
						|
CSV_INTERNAL_SEP=,
 | 
						|
PUBLISHER_WARRANTY_URL=http://services.openerp.com/publisher-warranty/
 | 
						|
ROOT_PATH=${ROOT_PATH}
 | 
						|
REPORTGZ=False
 | 
						|
WEBSOCKET_KEEP_ALIVE_TIMEOUT=3600
 | 
						|
WEBSOCKET_RATE_LIMIT_BURST=10
 | 
						|
WEBSOCKET_RATE_LIMIT_DELAY=0.2
 | 
						|
 | 
						|
# Server startup config
 | 
						|
ODOO_RC=${ROOT_PATH}/odoo.conf
 | 
						|
SAVE=False
 | 
						|
INIT=${INIT}
 | 
						|
UPDATE=${UPDATE}
 | 
						|
DEMO=False
 | 
						|
WITHOUT_DEMO=all
 | 
						|
IMPORT_PARTIAL=False
 | 
						|
PIDFILE=
 | 
						|
ADDONS_PATH=${COMMUNITY_ADDONS},${ENTERPRISE_ADDONS},${THIRD_PARTY_ADDONS},${EXTRA_ADDONS},${CUSTOM_ADDONS}
 | 
						|
UPGRADE_PATH=
 | 
						|
SERVER_WIDE_MODULES=${LOAD}
 | 
						|
DATA_DIR=/var/lib/odoo
 | 
						|
 | 
						|
# HTTP
 | 
						|
HTTP_INTERFACE=0.0.0.0
 | 
						|
XMLRPCS_INTERFACE=${HTTP_INTERFACE}
 | 
						|
DEBUG_INTERFACE=${HTTP_INTERFACE}
 | 
						|
HTTP_PORT=8069
 | 
						|
DEBUG_PORT=8070
 | 
						|
XMLRPCS_PORT=8071
 | 
						|
GEVENT_PORT=8072
 | 
						|
HTTP_ENABLE=True
 | 
						|
XMLRPCS=True
 | 
						|
PROXY_MODE=True
 | 
						|
X_SENDFILE=False
 | 
						|
 | 
						|
# Testing Group
 | 
						|
TEST_FILE=False
 | 
						|
TEST_ENABLE=${TEST_ENABLE}
 | 
						|
TEST_TAGS=${TEST_TAGS}
 | 
						|
SCREENCASTS=None
 | 
						|
SCREENSHOTS=/tmp/odoo_tests
 | 
						|
 | 
						|
# Logging Group
 | 
						|
LOG_LEVEL=${LOG_LEVEL}
 | 
						|
LOG_HANDLER=odoo.http.rpc.request:${LOG_HANDLER_LEVEL},odoo.http.rpc.response:${LOG_HANDLER_LEVEL},:${LOG_HANDLER_LEVEL},odoo.sql_db:${LOG_HANDLER_LEVEL}
 | 
						|
LOG_DB=False
 | 
						|
LOG_DB_LEVEL=${LOG_LEVEL}
 | 
						|
SYSLOG=False
 | 
						|
LOGFILE=
 | 
						|
 | 
						|
# SMTP Group
 | 
						|
EMAIL_FROM=${EMAIL_FROM}
 | 
						|
FROM_FILTER=${FROM_FILTER}
 | 
						|
SMTP_SERVER=${SMTP_SERVER}
 | 
						|
SMTP_PORT=${SMTP_PORT}
 | 
						|
SMTP_SSL=${SMTP_SSL}
 | 
						|
SMTP_USER=${SMTP_USER}
 | 
						|
SMTP_PASSWORD=${SMTP_PASSWORD}
 | 
						|
SMTP_SSL_CERTIFICATE_FILENAME=False
 | 
						|
SMTP_SSL_PRIVATE_KEY_FILENAME=False
 | 
						|
 | 
						|
# DB Group
 | 
						|
DB_NAME=${DB_NAME}
 | 
						|
DB_USER=${DB_USER}
 | 
						|
DB_PASSWORD=${DB_PASSWORD}
 | 
						|
PG_PATH=
 | 
						|
DB_HOST=${DB_HOST}
 | 
						|
DB_PORT=${DB_PORT}
 | 
						|
DB_SSLMODE=${DB_SSLMODE}
 | 
						|
DB_MAXCONN=${DB_MAXCONN}
 | 
						|
DB_TEMPLATE=${DB_TEMPLATE}
 | 
						|
# Internationalisation options
 | 
						|
LOAD_LANGUAGE=${LOAD_LANGUAGE}
 | 
						|
LANGUAGE=
 | 
						|
TRANSLATE_OUT=
 | 
						|
TRANSLATE_IN=
 | 
						|
OVERWRITE_EXISTING_TRANSLATIONS=False
 | 
						|
TRANSLATE_MODULES="['all']"
 | 
						|
# Security
 | 
						|
LIST_DB=${LIST_DB}
 | 
						|
# WEB
 | 
						|
DBFILTER=${DBFILTER}
 | 
						|
 | 
						|
# Advanced options
 | 
						|
DEV_MODE=${DEV_MODE}
 | 
						|
SHELL_INTERFACE=ptpython
 | 
						|
STOP_AFTER_INIT=False
 | 
						|
OSV_MEMORY_COUNT_LIMIT=False
 | 
						|
TRANSIENT_AGE_LIMIT=1.0
 | 
						|
MAX_CRON_THREADS=2
 | 
						|
UNACCENT=${UNACCENT}
 | 
						|
GEOIP_DATABASE=/usr/share/GeoIP/GeoLite2-City.mmdb
 | 
						|
WORKERS=${WORKERS}
 | 
						|
LIMIT_MEMORY_SOFT=2147483648
 | 
						|
LIMIT_MEMORY_HARD=2684354560
 | 
						|
LIMIT_TIME_CPU=120
 | 
						|
LIMIT_TIME_REAL=480
 | 
						|
LIMIT_TIME_REAL_CRON=600
 | 
						|
LIMIT_REQUEST=8192
 | 
						|
 | 
						|
# Redis
 | 
						|
ODOO_SESSION_REDIS=${SESSION_REDIS}
 | 
						|
ODOO_SESSION_REDIS_HOST=${REDIS_HOST}
 | 
						|
ODOO_SESSION_REDIS_PORT=${REDIS_PORT}
 | 
						|
ODOO_SESSION_REDIS_PASSWORD=${REDIS_PASSWORD}
 | 
						|
ODOO_SESSION_REDIS_URL=${REDIS_URL}
 | 
						|
ODOO_SESSION_REDIS_PREFIX=${REDIS_PREFIX}
 | 
						|
ODOO_SESSION_REDIS_SENTINEL_MASTER_NAME=${REDIS_SENTINEL_MASTER_NAME}
 | 
						|
ODOO_SESSION_REDIS_SENTINEL_HOST=${REDIS_SENTINEL_HOST}
 | 
						|
ODOO_SESSION_REDIS_SENTINEL_PORT=${REDIS_SENTINEL_PORT}
 | 
						|
ODOO_SESSION_REDIS_EXPIRATION=${REDIS_EXPIRATION}
 | 
						|
ODOO_SESSION_REDIS_EXPIRATION_ANONYMOUS=${REDIS_EXPIRATION_ANONYMOUS}
 | 
						|
 | 
						|
# Base Attachment Object Storage
 | 
						|
DISABLE_ATTACHMENT_STORAGE=0
 | 
						|
 | 
						|
# S3
 | 
						|
AWS_HOST=${AWS_HOST}
 | 
						|
AWS_REGION=${AWS_REGION}
 | 
						|
AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
 | 
						|
AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
 | 
						|
AWS_BUCKETNAME=${AWS_BUCKETNAME}
 | 
						|
 | 
						|
#--------------#
 | 
						|
#    Docker    #
 | 
						|
#--------------#
 | 
						|
COMPOSE_PROJECT_NAME=${PROJECT_NAME}
 | 
						|
DOCKER_SOCK=/var/run/docker.sock
 | 
						|
TEMP_DOCKER_SOCK=/tmp/docker.sock
 | 
						|
 | 
						|
#----------------#
 | 
						|
#    Postgres    #
 | 
						|
#----------------#
 | 
						|
POSTGRES_HOST=${POSTGRES_MAIN_HOST}
 | 
						|
POSTGRES_PORT=${POSTGRES_MAIN_PORT}
 | 
						|
POSTGRES_DB=${POSTGRES_MAIN_DB}
 | 
						|
POSTGRES_USER=${POSTGRES_MAIN_USER}
 | 
						|
POSTGRES_PASSWORD=${POSTGRES_MAIN_PASSWORD}
 | 
						|
PGDATA=/var/lib/postgresql/data/${PROJECT_NAME}
 | 
						|
 | 
						|
#-------------#
 | 
						|
#    Nginx    #
 | 
						|
#-------------#
 | 
						|
NGINX_CONF=/etc/nginx/nginx.conf
 | 
						|
NGINX_DEFAULT_CONF=/etc/nginx/conf.d/default.conf
 | 
						|
VIRTUAL_HOST=${DOMAIN}
 | 
						|
LETSENCRYPT_HOST=${DOMAIN}
 | 
						|
LETSENCRYPT_EMAIL=${SUPPORT_EMAIL}
 | 
						|
CORS_ALLOWED_DOMAIN=${CORS_ALLOWED_DOMAIN}
 | 
						|
 | 
						|
#-------------------#
 | 
						|
#    Nginx Proxy    #
 | 
						|
#-------------------#
 | 
						|
NGINX_CERTS=/etc/nginx/certs
 | 
						|
NGINX_VHOST=/etc/nginx/vhost.d
 | 
						|
NGINX_HTML=/usr/share/nginx/html
 | 
						|
NGINX_ACME=/etc/acme.sh
 | 
						|
TRUST_DOWNSTREAM_PROXY=true
 | 
						|
NGINX_PROXY_CORS_CONF=/etc/nginx/cors.conf
 | 
						|
CORS_ALLOWED_DOMAIN=${CORS_ALLOWED_DOMAIN}
 | 
						|
 | 
						|
#----------------------#
 | 
						|
#    ACME Companion    #
 | 
						|
#----------------------#
 | 
						|
# For prod use: https://acme-v02.api.letsencrypt.org/directory
 | 
						|
ACME_CA_URI=https://acme-staging-v02.api.letsencrypt.org/directory
 | 
						|
CERTS_UPDATE_INTERVAL=3600
 | 
						|
DEFAULT_EMAIL=${SUPPORT_EMAIL}
 | 
						|
 | 
						|
#-------------#
 | 
						|
#    Redis    #
 | 
						|
#-------------#
 | 
						|
KEYDB_PORT=${REDIS_PORT}
 | 
						|
KEYDB_DATA=/var/lib/keydb
 | 
						|
 | 
						|
#-------------#
 | 
						|
#    Minio    #
 | 
						|
#-------------#
 | 
						|
MINIO_ROOT_USER=${AWS_ACCESS_KEY_ID}
 | 
						|
MINIO_ROOT_PASSWORD=${AWS_SECRET_ACCESS_KEY}
 | 
						|
MINIO_VIRTUAL_HOST=${S3_VIRTUAL_HOST}
 | 
						|
MINIO_BROWSER_REDIRECT_URL=http://${MINIO_VIRTUAL_HOST}
 | 
						|
MINIO_API_PORT=${S3_API_PORT}
 | 
						|
MINIO_CONSOLE_PORT=${S3_CONSOLE_PORT}
 | 
						|
MINIO_DATA=/data
 | 
						|
 | 
						|
#-------------#
 | 
						|
#   PgAdmin   #
 | 
						|
#-------------#
 | 
						|
# Volume path
 | 
						|
PGADMIN_DATA=/var/lib/pgadmin
 | 
						|
 | 
						|
# Nginx Proxy Configuration
 | 
						|
PGADMIN_VIRTUAL_HOST=${PGADMIN_DOMAIN}
 | 
						|
PGADMIN_LETSENCRYPT_HOST=${PGADMIN_DOMAIN}
 | 
						|
PGADMIN_LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
 | 
						|
 | 
						|
# PgAdmin Configuration
 | 
						|
PGADMIN_CONFIG_APP_NAME="'pgAdmin 4'"
 | 
						|
PGADMIN_CONFIG_SERVER_MODE=${PGADMIN_CONFIG_SERVER_MODE}
 | 
						|
PGADMIN_CONFIG_DEFAULT_SERVER="'127.0.0.1'"
 | 
						|
PGADMIN_CONFIG_DEFAULT_SERVER_PORT=5050
 | 
						|
PGADMIN_CONFIG_MAX_SESSION_IDLE_TIME=120
 | 
						|
PGADMIN_CONFIG_MAX_QUERY_HIST_STORED=20
 | 
						|
# Security Settings
 | 
						|
PGADMIN_CONFIG_PASSWORD_LENGTH_MIN=6
 | 
						|
PGADMIN_CONFIG_ALLOW_SAVE_PASSWORD=True
 | 
						|
PGADMIN_CONFIG_ALLOW_SAVE_TUNNEL_PASSWORD=True
 | 
						|
PGADMIN_CONFIG_MAX_LOGIN_ATTEMPTS=10
 | 
						|
# DB Configuration
 | 
						|
PGADMIN_CONFIG_CONFIG_DATABASE_URI=${PGADMIN_DB_HOST}
 | 
						|
PGADMIN_CONFIG_CONFIG_DATABASE_CONNECTION_POOL_SIZE=5
 | 
						|
# Load Shared Servers Configuration into DB
 | 
						|
PGADMIN_SERVERS_JSON=${PGADMIN_SERVERS_JSON}
 | 
						|
 | 
						|
# Authentication
 | 
						|
PGADMIN_DEFAULT_EMAIL=${PGADMIN_EMAIL}
 | 
						|
PGADMIN_DEFAULT_PASSWORD=${PGADMIN_PASSWORD}
 | 
						|
 | 
						|
# PgAdmin SMTP Server
 | 
						|
PGADMIN_CONFIG_MAIL_SERVER="'localhost'"
 | 
						|
PGADMIN_CONFIG_MAIL_PORT=25
 | 
						|
PGADMIN_CONFIG_MAIL_USE_SSL=False
 | 
						|
PGADMIN_CONFIG_MAIL_USE_TLS=False
 | 
						|
PGADMIN_CONFIG_MAIL_USERNAME="''"
 | 
						|
PGADMIN_CONFIG_MAIL_PASSWORD="''"
 | 
						|
PGADMIN_CONFIG_MAIL_DEBUG=False
 | 
						|
PGADMIN_CONFIG_SECURITY_EMAIL_SENDER="'$PGADMIN_DEFAULT_EMAIL'"
 | 
						|
 | 
						|
# Dynamic PgAdmin Servers (Add as many as you need following copying these variables like {DB1}, {DB2}, DB3)
 | 
						|
PGADMIN_DB1_NAME=Odoocker
 | 
						|
PGADMIN_DB1_HOST=localhost
 | 
						|
PGADMIN_DB1_PORT=5432
 | 
						|
PGADMIN_DB1_MAINTENANCE_DB=odoocker
 | 
						|
PGADMIN_DB1_USERNAME=odoo
 | 
						|
PGADMIN_DB1_TUNNEL_HOST=erp.odoocker.test
 | 
						|
PGADMIN_DB1_TUNNEL_PORT=22
 | 
						|
PGADMIN_DB1_TUNNEL_USERNAME=ubuntu
 |