ansible-role-open-asfa/templates/open-asfa-docker-compose.ym...

98 lines
2.7 KiB
Django/Jinja

version: '3.6'
networks:
{% if open_asfa_behind_haproxy %}
haproxy-public:
external: true
{% endif %}
{{ open_asfa_docker_network }}:
volumes:
{{ open_asfa_db_volume }}:
services:
{{ open_asfa_docker_service_server_name }}:
image: {{ open_asfa_docker_server_image }}
networks:
- {{ open_asfa_docker_network }}
{% if open_asfa_behind_haproxy %}
- haproxy-public
{% endif %}
environment:
SERVER_PORT: 8080
#DB_HOST: {{ open_asfa_docker_service_server_name }}_pg
DB_HOST: {{ open_asfa_db_host }}
DB_PORT: {{ open_asfa_db_port }}
SCHEMA: {{ open_asfa_db_name }}
DB_USER: {{ open_asfa_db_user }}
DB_PASSWORD: {{ open_asfa_db_pwd }}
AUTH_URL: {{ open_asfa_keylocak_auth_url }}
SECRET: {{ open_asfa_keycloak_client_secret }}
REALM: {{ open_asfa_keycloak_realm }}
CLIENT: {{ open_asfa_keycloak_client_name }}
CLIENT_ID: {{ open_asfa_keycloak_client_id }}
GEONAME_KEY: {{ open_asfa_geoname_key }}
AGROVOC_URL: {{ open_asfa_agrovoc_url }}
deploy:
mode: replicated
replicas: 1
endpoint_mode: dnsrr
placement:
constraints: [node.role == worker]
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
logging:
driver: 'journald'
{{ open_asfa_docker_service_client_name }}:
image: {{ open_asfa_docker_client_image }}
networks:
- {{ open_asfa_docker_network }}
{% if open_asfa_behind_haproxy %}
- haproxy-public
{% endif %}
environment:
API_BASE_URL: http://{{ open_asfa_docker_service_server_name }}:8080
deploy:
mode: replicated
replicas: 1
endpoint_mode: dnsrr
placement:
constraints: [node.role == worker]
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
logging:
driver: 'journald'
{% if open_asfa_db_as_container %}
pg:
image: {{ open_asfa_db_image }}
networks:
- {{ open_asfa_docker_network }}
# ports:
# - {{ open_asfa_db_port }}
volumes:
- {{ open_asfa_db_volume }}:/var/lib/postgresql/data/pg_data
- {{ open_asfa_compose_dir }}/pg-create-user-db.sh:/docker-entrypoint-initdb.d/pg-create-user-db.sh:ro
environment:
POSTGRES_PASSWORD: {{ open_asfa_db_pwd }}
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_PORT: {{ open_asfa_db_port }}
PGDATA: /var/lib/postgresql/data/pg_data
deploy:
placement:
constraints: {{ open_asfa_db_constraints }}
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
logging:
driver: 'journald'
{% endif %}