{ "containers": [ { "name": "db", "image": "postgres:latest", "envs": { "POSTGRES_DB": "admin", "POSTGRES_USER": "admin", "POSTGRES_PASSWORD": "admin" }, "ports": [{"internal": 5432, "external": 5432}], "volumes": [ { "container_path": "/var/lib/postgresql/data", "volume_name": "postgres-data" } ] }, { "name": "postgres_exporter", "image": "wrouesnel/postgres_exporter:latest", "envs": { "DATA_SOURCE_NAME": "postgresql://admin:admin@db:5432/admin?sslmode=disable" }, "ports": [{"internal": 9187, "external": 9187}] }, { "name": "odoo", "image": "odoo:16.0", "envs": { "HOST": "db", "USER": "admin", "PASSWORD": "admin", "DATABASE": "admin", "ODOO_PASSWORD": "admin" }, "ports": [{"internal": 8069, "external": 8069}], "instances": 2, "volumes": [ { "container_path": "/var/log/odoo", "host_path": "./odoo_logs" } ], "command": ["/bin/bash", "-c", "sleep 10 && /usr/bin/odoo --logfile=/var/log/odoo/odoo.log -i base"] }, { "name": "grafana", "image": "grafana/grafana:latest", "envs": { "GF_SECURITY_ADMIN_PASSWORD": "grafana_pwd", "GF_DATASOURCES_PROMETHEUS_URL": "http://prometheus:9090" }, "ports": [{"internal": 3000, "external": 3000}], "instances": 2 }, { "name": "prometheus", "image": "prom/prometheus:latest", "ports": [{"internal": 9090, "external": 9090}], "volumes": [ { "container_path": "/prometheus", "volume_name": "prometheus-data" }, { "container_path": "/etc/prometheus/prometheus.yml", "host_path": "./prometheus.yml" } ] }, { "name": "fluentd", "image": "fluent/fluentd:v1.13-1", "ports": [{"internal": 24224, "external": 24224}], "volumes": [ { "container_path": "/fluentd/etc/fluent.conf", "host_path": "./fluent.conf" }, { "container_path": "/var/log/odoo", "host_path": "./odoo_logs" } ] }, { "name": "backup", "image": "alpine:latest", "envs": { "POSTGRES_HOST": "db", "POSTGRES_DB": "admin", "POSTGRES_USER": "admin", "POSTGRES_PASSWORD": "admin" }, "command": [ "/bin/sh", "-c", "apk add --no-cache postgresql-client && sleep 10" ], "volumes": [ { "container_path": "/backup", "volume_name": "backup-data" } ] } ] }