WhatsApp/Signal/Formstack/admin updates

This commit is contained in:
Darren Clarke 2025-11-21 14:55:28 +01:00
parent bcecf61a46
commit d0cc5a21de
451 changed files with 16139 additions and 39623 deletions

View file

@ -0,0 +1,20 @@
services:
bridge-whatsapp:
container_name: bridge-whatsapp
build:
context: ../../
dockerfile: ./apps/bridge-whatsapp/Dockerfile
image: registry.gitlab.com/digiresilience/link/link-stack/bridge-whatsapp:${LINK_STACK_VERSION}
restart: ${RESTART}
environment:
PORT: 5000
NODE_ENV: production
BRIDGE_FRONTEND_URL: http://link:3000/link
volumes:
- bridge-whatsapp-data:/home/node/baileys
ports:
- 5000:5000
volumes:
bridge-whatsapp-data:
driver: local

View file

@ -4,38 +4,37 @@ x-global-vars: &common-global-variables
x-bridge-vars: &common-bridge-variables
DATABASE_HOST: "postgresql"
DATABASE_NAME: "cdr"
DATABASE_PORT: "5432"
DATABASE_USER: ${DATABASE_USER}
DATABASE_ROOT_OWNER: "root"
DATABASE_ROOT_PASSWORD: ${BRIDGE_DATABASE_ROOT_PASSWORD}
DATABASE_OWNER: ${DATABASE_USER}
DATABASE_PASSWORD: ${DATABASE_PASSWORD}
DATABASE_URL: "postgresql://bridge:${DATABASE_PASSWORD}@postgresql/cdr"
WORKER_DATABASE_URL: "postgresql://bridge:${DATABASE_PASSWORD}@postgresql/cdr"
SHADOW_DATABASE_URL: "postgresql://bridge:${DATABASE_PASSWORD}@postgresql/cdr_shadow"
ROOT_DATABASE_URL: "postgresql://bridge:${DATABASE_PASSWORD}@postgresql/template1"
APP_ROOT_DATABASE_URL: "postgresql://root:${BRIDGE_DATABASE_ROOT_PASSWORD}@postgresql/bridge"
DATABASE_AUTH_URL: "postgresql://app_graphile_auth:${BRIDGE_DATABASE_AUTHENTICATOR_PASSWORD}@postgresql/cdr"
DATABASE_URL: "postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@postgresql/cdr"
WORKER_DATABASE_URL: "postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@postgresql/cdr"
SHADOW_DATABASE_URL: "postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@postgresql/cdr_shadow"
ROOT_DATABASE_URL: "postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@postgresql/template1"
APP_ROOT_DATABASE_URL: "postgresql://zammad:${ZAMMAD_DATABASE_PASSWORD}@postgresql/zammad_production"
DATABASE_AUTH_URL: "postgresql://${DATABASE_USER}:${DATABASE_PASSWORD}@postgresql/cdr"
FRONTEND_URL: ${BRIDGE_DOMAIN}
API_URL: "http://bridge-api:3001"
NEXTAUTH_URL: ${BRIDGE_DOMAIN}
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
BRIDGE_SIGNAL_URL: ${BRIDGE_SIGNAL_URL}
BRIDGE_SIGNAL_AUTO_GROUPS: ${BRIDGE_SIGNAL_AUTO_GROUPS}
BRIDGE_WHATSAPP_URL: "http://bridge-whatsapp:5000"
LOG_LEVEL: "debug"
ZAMMAD_API_TOKEN: ${ZAMMAD_API_TOKEN}
ZAMMAD_URL: ${ZAMMAD_URL}
FORMSTACK_SHARED_SECRET: ${FORMSTACK_SHARED_SECRET}
FORMSTACK_FIELD_MAPPING: ${FORMSTACK_FIELD_MAPPING}
services:
bridge-frontend:
build:
context: ../../
dockerfile: ./apps/bridge-frontend/Dockerfile
container_name: bridge-frontend
restart: ${RESTART}
ports:
- 8006:3000
environment: *common-bridge-variables
bridge-worker:
build:
context: ../../
dockerfile: ./apps/bridge-worker/Dockerfile
container_name: bridge-worker
image: registry.gitlab.com/digiresilience/link/link-stack/bridge-worker:${LINK_STACK_VERSION}
restart: ${RESTART}
environment: *common-bridge-variables

View file

@ -1,15 +0,0 @@
services:
leafcutter:
container_name: leafcutter
restart: ${RESTART}
build:
context: ../../
dockerfile: ./apps/leafcutter/Dockerfile
image: registry.gitlab.com/digiresilience/link/link-stack/leafcutter:${LINK_STACK_VERSION}
expose:
- "3000"
ports:
- "8005:3000"
environment:
NEXTAUTH_URL: ${LINK_URL}
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}

View file

@ -14,11 +14,11 @@ services:
ZAMMAD_API_TOKEN: ${ZAMMAD_API_TOKEN}
ZAMMAD_VIRUAL_HOST: ${ZAMMAD_VIRTUAL_HOST}
LINK_URL: ${LINK_URL}
LEAFCUTTER_URL: https://lc.digiresilience.org
BRIDGE_URL: http://bridge-frontend:3000
BRIDGE_SIGNAL_URL: http://signal-cli-rest-api:8080
BRIDGE_WHATSAPP_URL: http://bridge-whatsapp:3000
BRIDGE_WHATSAPP_URL: http://bridge-whatsapp:5000
ZAMMAD_URL: http://zammad-nginx:8080
REDIS_URL: "redis://zammad-redis:6379"
NEXTAUTH_URL: ${LINK_URL}/api/auth
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
NEXTAUTH_AUDIENCE: ${NEXTAUTH_AUDIENCE}
@ -32,3 +32,5 @@ services:
DATABASE_USER: ${DATABASE_USER}
DATABASE_PASSWORD: ${DATABASE_PASSWORD}
DATABASE_URL: ${DATABASE_URL}
FORMSTACK_SHARED_SECRET: ${FORMSTACK_SHARED_SECRET}
LOG_LEVEL: debug

View file

@ -6,8 +6,8 @@ services:
restart: ${RESTART}
environment:
- discovery.type=single-node
# - plugins.security.ssl.transport.enforce_hostname_verification=false
# - plugins.security.ssl.transport.resolve_hostname=false
- plugins.security.ssl.transport.enforce_hostname_verification=false
- plugins.security.ssl.transport.resolve_hostname=false
- cluster.routing.allocation.disk.watermark.low=3gb
- cluster.routing.allocation.disk.watermark.high=2gb
- cluster.routing.allocation.disk.watermark.flood_stage=500mb
@ -31,8 +31,8 @@ services:
- opensearch-data:/usr/share/opensearch/data
- ../opensearch/config.yml:/usr/share/opensearch/config/opensearch-security/config.yml
ports:
- 9200:9200
- 9600:9600
- 127.0.0.1:9200:9200
- 127.0.0.1:9600:9600
opensearch-dashboards:
container_name: opensearch-dashboards
@ -40,17 +40,17 @@ services:
image: registry.gitlab.com/digiresilience/link/link-stack/opensearch-dashboards:${LINK_STACK_VERSION}
restart: ${RESTART}
ports:
- 5601:5601
- 127.0.0.1:5601:5601
expose:
- "5601"
volumes:
- ../opensearch-dashboards/opensearch_dashboards.yml:/usr/share/opensearch-dashboards/config/opensearch_dashboards.yml
environment:
OPENSEARCH_HOSTS: '["https://opensearch:9200"]'
# OPENSEARCH_SECURITY_AUTH_TYPE: "proxy"
# OPENSEARCH_SECURITY_PROXYCACHE_USER_HEADER: "x-proxy-user"
# OPENSEARCH_SECURITY_PROXYCACHE_ROLES_HEADER: "x-proxy-roles"
# OPENSEARCH_REQUESTHEADERSALLOWLIST: '["securitytenant","Authorization","x-forwarded-for","x-proxy-user","x-proxy-roles"]'
OPENSEARCH_SECURITY_AUTH_TYPE: "proxy"
OPENSEARCH_SECURITY_PROXYCACHE_USER_HEADER: "x-proxy-user"
OPENSEARCH_SECURITY_PROXYCACHE_ROLES_HEADER: "x-proxy-roles"
OPENSEARCH_REQUESTHEADERSALLOWLIST: '["securitytenant","Authorization","x-forwarded-for","x-proxy-user","x-proxy-roles"]'
volumes:
opensearch-data:

View file

@ -48,7 +48,7 @@ services:
image: registry.gitlab.com/digiresilience/link/link-stack/postgresql:${LINK_STACK_VERSION}
restart: ${RESTART}
ports:
- 5432:5432
- 5433:5432
volumes:
- postgresql-data:/var/lib/postgresql/data

View file

@ -1,7 +1,8 @@
services:
signal-cli-rest-api:
container_name: signal-cli-rest-api
build: ../signal-cli-rest-api
image: registry.gitlab.com/digiresilience/link/link-stack/signal-cli-rest-api:develop
platform: linux/amd64
environment:
- MODE=normal
volumes:

View file

@ -14,10 +14,14 @@ x-zammad-vars: &common-zammad-variables
ELASTICSEARCH_PASS: ${OPENSEARCH_ADMIN_PASSWORD}
ELASTICSEARCH_SSL_VERIFY: "false" # this doesn't set es_ssl_verify as expected, but ideally it would
ELASTICSEARCH_SCHEMA: "https"
BRIDGE_SIGNAL_AUTO_GROUPS: ${BRIDGE_SIGNAL_AUTO_GROUPS}
x-zammad-args: &common-zammad-args
EMBEDDED: "true"
LINK_HOST: ${LINK_HOST}
services:
zammad-init:
platform: linux/x86_64
container_name: zammad-init
command: ["zammad-init"]
depends_on:
@ -29,7 +33,7 @@ services:
build:
context: ../zammad
args:
EMBEDDED: "true"
<<: *common-zammad-args
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
restart: on-failure
user: 0:0
@ -47,7 +51,6 @@ services:
<<: *common-global-variables
zammad-nginx:
platform: linux/x86_64
container_name: zammad-nginx
command: ["zammad-nginx"]
expose:
@ -59,7 +62,7 @@ services:
build:
context: ../zammad
args:
EMBEDDED: "true"
<<: *common-zammad-args
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
restart: ${RESTART}
environment:
@ -72,7 +75,6 @@ services:
- zammad-var:/opt/zammad/var:ro
zammad-railsserver:
platform: linux/x86_64
container_name: zammad-railsserver
command: ["zammad-railsserver"]
depends_on:
@ -84,7 +86,7 @@ services:
build:
context: ../zammad
args:
EMBEDDED: "true"
<<: *common-zammad-args
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
restart: ${RESTART}
volumes:
@ -102,7 +104,6 @@ services:
- redis-data:/data
zammad-scheduler:
platform: linux/x86_64
container_name: zammad-scheduler
command: ["zammad-scheduler"]
depends_on:
@ -114,7 +115,7 @@ services:
build:
context: ../zammad
args:
EMBEDDED: "true"
<<: *common-zammad-args
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
restart: ${RESTART}
volumes:
@ -122,7 +123,6 @@ services:
- zammad-storage:/opt/zammad/storage
zammad-websocket:
platform: linux/x86_64
container_name: zammad-websocket
command: ["zammad-websocket"]
depends_on:
@ -134,7 +134,7 @@ services:
build:
context: ../zammad
args:
EMBEDDED: "true"
<<: *common-zammad-args
image: registry.gitlab.com/digiresilience/link/link-stack/zammad:${LINK_STACK_VERSION}
restart: ${RESTART}
volumes: