mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-10-10 18:58:10 +02:00
- Change Talk (HPB) network_mode from host → bridge and drop TURN relay range mapping - Remove obsolete nginx restart handler; rely on 'docker compose up' notify - Fix spreed task condition to use HPB standalone flag - docker-compose.yml.j2: parameterize service names, use NEXTCLOUD_*_SERVICE vars, align host-gateway condition with HPB, tidy ports/expose/network blocks - env.j2/nginx configs: rename TALK_* → HPB_* variables and locations; use templated NEXTCLOUD_SERVICE for php upstream - vars: introduce entity_name; centralize *SERVICE keys; rename all Talk vars to HPB; adjust whiteboard keys; compute URLs/JSON configs accordingly - spreed plugin vars: point to HPB signaling/STUN/TURN and internal secret Ref: https://chatgpt.com/share/68db9f41-16ec-800f-9cdf-7530862f89aa
104 lines
3.9 KiB
Django/Jinja
104 lines
3.9 KiB
Django/Jinja
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
|
|
|
{% set service_name = NEXTCLOUD_PROXY_SERVICE %}
|
|
{{ service_name }}:
|
|
image: "{{ NEXTCLOUD_PROXY_IMAGE }}:{{ NEXTCLOUD_PROXY_VERSION }}"
|
|
container_name: "{{ NEXTCLOUD_PROXY_CONTAINER }}"
|
|
logging:
|
|
driver: journald
|
|
restart: {{ DOCKER_RESTART_POLICY }}
|
|
ports:
|
|
- "127.0.0.1:{{ NEXTCLOUD_PORT }}:{{ container_port }}"
|
|
volumes:
|
|
- "{{ NEXTCLOUD_HOST_NGINX_SRC }}:/etc/nginx/nginx.conf:ro"
|
|
volumes_from:
|
|
- {{ NEXTCLOUD_SERVICE }}
|
|
{% include 'roles/docker-container/templates/healthcheck/curl.yml.j2' %}
|
|
networks:
|
|
default:
|
|
ipv4_address: 192.168.102.67
|
|
{% if NEXTCLOUD_HPB_NETWORK_MODE == 'host' %}
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
{% endif %}
|
|
|
|
{% set service_name = NEXTCLOUD_SERVICE %}
|
|
{{ service_name }}:
|
|
image: "{{ NEXTCLOUD_IMAGE }}:{{ NEXTCLOUD_VERSION }}"
|
|
container_name: {{ NEXTCLOUD_CONTAINER }}
|
|
volumes:
|
|
- data:{{ NEXTCLOUD_DOCKER_WORK_DIRECTORY }}
|
|
- {{ NEXTCLOUD_HOST_CONF_ADD_PATH }}:{{ NEXTCLOUD_DOCKER_CONF_ADD_PATH }}:ro
|
|
healthcheck:
|
|
test: ["CMD", "su", "www-data", "-s", "/bin/sh", "-c", "php {{ NEXTCLOUD_INTERNAL_OCC_COMMAND }} status"]
|
|
interval: 1m
|
|
timeout: 10s
|
|
retries: 3
|
|
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/depends_on/dmbs_excl.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/networks.yml.j2' %}
|
|
ipv4_address: 192.168.102.69
|
|
|
|
{% if NEXTCLOUD_HPB_SIGNALING_ENABLED | bool %}
|
|
{% set service_name = NEXTCLOUD_HPB_SERVICE %}
|
|
{{ service_name }}:
|
|
{% set container_port = NEXTCLOUD_HPB_SIGNALING_PORT %}
|
|
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/healthcheck/tcp.yml.j2' %}
|
|
image: "{{ NEXTCLOUD_HPB_IMAGE }}:{{ NEXTCLOUD_HPB_VERSION }}"
|
|
container_name: {{ NEXTCLOUD_HPB_CONTAINER }}
|
|
init: true
|
|
{% if NEXTCLOUD_HPB_NETWORK_MODE == 'bridge' and NEXTCLOUD_HPB_TURN_ONBOARD_ENABLED | bool %}
|
|
ports:
|
|
- {{ networks.internet.ip4 }}:{{ NEXTCLOUD_HPB_TURN_ONBOARD_PORT }}:{{ NEXTCLOUD_HPB_TURN_ONBOARD_PORT }}/tcp
|
|
- {{ networks.internet.ip4 }}:{{ NEXTCLOUD_HPB_TURN_ONBOARD_PORT }}:{{ NEXTCLOUD_HPB_TURN_ONBOARD_PORT }}/udp
|
|
expose:
|
|
- "{{ container_port }}"
|
|
networks:
|
|
default:
|
|
ipv4_address: 192.168.102.68
|
|
{% else %}
|
|
network_mode: {{ NEXTCLOUD_HPB_NETWORK_MODE }}
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% if NEXTCLOUD_WHITEBOARD_ENABLED %}
|
|
{% set service_name = NEXTCLOUD_WHITEBOARD_SERVICE %}
|
|
{{ service_name }}:
|
|
{% set container_port = NEXTCLOUD_WHITEBOARD_PORT_INTERNAL %}
|
|
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/healthcheck/nc.yml.j2' %}
|
|
image: "{{ NEXTCLOUD_WHITEBOARD_IMAGE }}:{{ NEXTCLOUD_WHITEBOARD_VERSION }}"
|
|
container_name: {{ NEXTCLOUD_WHITEBOARD_CONTAINER }}
|
|
expose:
|
|
- "{{ container_port }}"
|
|
networks:
|
|
default:
|
|
ipv4_address: 192.168.102.71
|
|
{% endif %}
|
|
|
|
{% set service_name = NEXTCLOUD_CRON_SERVICE %}
|
|
{{ service_name }}:
|
|
container_name: "{{ NEXTCLOUD_CRON_CONTAINER }}"
|
|
image: "{{ NEXTCLOUD_IMAGE }}:{{ NEXTCLOUD_VERSION }}"
|
|
restart: {{ DOCKER_RESTART_POLICY }}
|
|
logging:
|
|
driver: journald
|
|
volumes:
|
|
- data:{{ NEXTCLOUD_DOCKER_WORK_DIRECTORY }}
|
|
entrypoint: /cron.sh
|
|
healthcheck:
|
|
test: ["CMD", "su", "www-data", "-s", "/bin/sh", "-c", "php {{ NEXTCLOUD_INTERNAL_OCC_COMMAND }} status"]
|
|
interval: 1m
|
|
timeout: 10s
|
|
retries: 3
|
|
{% include 'roles/docker-container/templates/depends_on/dmbs_excl.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/networks.yml.j2' %}
|
|
ipv4_address: 192.168.102.70
|
|
|
|
{% include 'roles/docker-compose/templates/volumes.yml.j2' %}
|
|
data:
|
|
name: {{ NEXTCLOUD_VOLUME }}
|
|
|
|
{% include 'roles/docker-compose/templates/networks.yml.j2' %}
|