90 lines
2.3 KiB
JSON
90 lines
2.3 KiB
JSON
{
|
|
"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": "odoo",
|
|
"image": "odoo:latest",
|
|
"envs": {
|
|
"HOST": "db",
|
|
"USER": "admin",
|
|
"PASSWORD": "admin",
|
|
"DATABASE": "admin",
|
|
"ODOO_PASSWORD": "admin"
|
|
},
|
|
"ports": [{"internal": 8069, "external": 8069}],
|
|
"instances": 3
|
|
},
|
|
{
|
|
"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"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"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"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
|