tutor-cairn/tutorcairn/patches/local-docker-compose-services
Danyal Faheem 04f4275236
fix: do not add cairn-postgresql and cairn-clickhouse dependencies when they are running externally (#57)
* fix: don't add cairn-postgresql as a dependency when CAIRN_RUN_POSTGRESQL is false

* fix: don't manage cairn-clickhouse permissions CAIRN_RUN_CLICKHOUSE is false

* fix: add missing CAIRN_POSTGRESQL_HOST and CAIRN_POSTGRESQL_PORT settings to allow usage with external postgresql DBs
2025-03-14 17:48:06 +05:00

98 lines
3.7 KiB
Plaintext

####### Cairn plugin
# log collection
cairn-vector:
image: {{ CAIRN_VECTOR_DOCKER_IMAGE }}
volumes:
- ../../data/cairn/vector:/var/lib/vector
- ../plugins/cairn/apps/vector/local.toml:/etc/vector/vector.toml:ro
{% if CAIRN_DOCKER_HOST_SOCK_PATH %}- {{ CAIRN_DOCKER_HOST_SOCK_PATH }}:/var/run/docker.sock:ro{% endif %}
environment:
- DOCKER_HOST=/var/run/docker.sock
- VECTOR_LOG=warn
restart: unless-stopped
{% if CAIRN_RUN_CLICKHOUSE %}
# log storage
cairn-clickhouse:
image: {{ CAIRN_CLICKHOUSE_DOCKER_IMAGE }}
volumes:
- ../../data/cairn/clickhouse:/var/lib/clickhouse
- ../plugins/cairn/apps/clickhouse/users.d/cairn.xml:/etc/clickhouse-server/users.d/cairn.xml:ro
- ../plugins/cairn/apps/clickhouse/auth.json:/scripts/clickhouse-auth.json:ro
user: "1000:1000"
environment:
CLICKHOUSE_DO_NOT_CHOWN: "1"
ulimits:
nofile:
soft: 262144
hard: 262144
restart: unless-stopped
depends_on:
- permissions
{% endif %}
cairn-superset:
image: {{ CAIRN_SUPERSET_DOCKER_IMAGE }}
volumes:
- ../plugins/cairn/apps/superset/superset_config.py:/app/superset_config.py:ro
- ../plugins/cairn/apps/clickhouse/auth.json:/app/superset/cairn/clickhouse-auth.json:ro
- ../plugins/cairn/apps/superset/bootstrap:/app/bootstrap:ro
{%- for mount in iter_mounts(MOUNTS, "cairn-superset") %}
- {{ mount }}
{%- endfor %}
restart: unless-stopped
depends_on:
{% if RUN_REDIS %}- redis{% endif %}
{% if CAIRN_RUN_POSTGRESQL %}- cairn-postgresql{% endif %}
cairn-superset-worker:
image: {{ CAIRN_SUPERSET_DOCKER_IMAGE }}
volumes:
- ../plugins/cairn/apps/superset/superset_config.py:/app/superset_config.py:ro
{%- for mount in iter_mounts(MOUNTS, "cairn-superset") %}
- {{ mount }}
{%- endfor %}
command: celery --app=superset.tasks.celery_app:app worker -Ofair -l INFO
restart: unless-stopped
healthcheck:
disable: true
depends_on:
{% if RUN_REDIS %}- redis{% endif %}
{% if CAIRN_RUN_POSTGRESQL %}- cairn-postgresql{% endif %}
cairn-superset-worker-beat:
image: {{ CAIRN_SUPERSET_DOCKER_IMAGE }}
volumes:
- ../plugins/cairn/apps/superset/superset_config.py:/app/superset_config.py:ro
{%- for mount in iter_mounts(MOUNTS, "cairn-superset") %}
- {{ mount }}
{%- endfor %}
command: celery --app=superset.tasks.celery_app:app beat --pidfile /tmp/celerybeat.pid -l INFO --schedule=/tmp/celerybeat-schedule
restart: unless-stopped
healthcheck:
disable: true
depends_on:
{% if RUN_REDIS %}- redis{% endif %}
{% if CAIRN_RUN_POSTGRESQL %}- cairn-postgresql{% endif %}
{% if CAIRN_RUN_POSTGRESQL %}
cairn-postgresql:
image: docker.io/postgres:9.6-alpine
environment:
POSTGRES_USER: "{{ CAIRN_POSTGRESQL_USERNAME }}"
POSTGRES_PASSWORD: "{{ CAIRN_POSTGRESQL_PASSWORD }}"
POSTGRES_DB: "{{ CAIRN_POSTGRESQL_DATABASE }}"
volumes:
- ../../data/cairn/postgresql:/var/lib/postgresql/data
restart: unless-stopped
user: "70:70"
depends_on:
- permissions
{% endif %}
cairn-watchcourses:
image: {{ DOCKER_IMAGE_OPENEDX }}
command: "python /openedx/scripts/server.py"
restart: unless-stopped
volumes:
- ../apps/openedx/settings/lms:/openedx/edx-platform/lms/envs/tutor:ro
- ../apps/openedx/settings/cms:/openedx/edx-platform/cms/envs/tutor:ro
- ../apps/openedx/config:/openedx/config:ro
- ../plugins/cairn/apps/openedx/scripts:/openedx/scripts:ro
- ../plugins/cairn/apps/clickhouse/auth.json:/openedx/clickhouse-auth.json:ro