fix: merge terminal into single coolify_soketi container with dual ports

This commit is contained in:
2025-11-17 13:40:33 +01:00
parent 417fbb6ff1
commit eb10348988

View File

@@ -97,8 +97,6 @@ services:
depends_on:
coolify_soketi:
condition: service_started
coolify_terminal:
condition: service_started
volumes:
- coolify_data:/data/coolify
- /var/run/docker.sock:/var/run/docker.sock
@@ -128,8 +126,6 @@ services:
- PUSHER_APP_SECRET=${DEV_COOLIFY_PUSHER_APP_SECRET}
- PUSHER_SCHEME=https
- SSL_MODE=off
- TERMINAL_HOST=${DEV_COMPOSE_PROJECT_NAME}_coolify_terminal
- TERMINAL_PORT=6002
networks:
- compose_network
labels:
@@ -153,9 +149,9 @@ services:
# Watchtower
- "com.centurylinklabs.watchtower.enable=${WATCHTOWER_LABEL_ENABLE}"
# Coolify Soketi (WebSocket server for realtime)
# Coolify Soketi (WebSocket server for realtime + terminal)
coolify_soketi:
image: quay.io/soketi/soketi:1.0-16-alpine
image: ${DEV_COOLIFY_REALTIME_IMAGE:-ghcr.io/coollabsio/coolify-realtime:1.0.10}
container_name: ${DEV_COMPOSE_PROJECT_NAME}_coolify_soketi
restart: unless-stopped
environment:
@@ -163,9 +159,9 @@ services:
- SOKETI_DEFAULT_APP_KEY=${DEV_COOLIFY_PUSHER_APP_KEY}
- SOKETI_DEFAULT_APP_SECRET=${DEV_COOLIFY_PUSHER_APP_SECRET}
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:6001/ready"]
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:6001/ready && wget -qO- http://127.0.0.1:6002/ready || exit 1"]
interval: 5s
timeout: 5s
timeout: 2s
retries: 10
networks:
- compose_network
@@ -180,27 +176,17 @@ services:
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-soketi-web-secure.entrypoints=web-secure"
# Service
- "traefik.http.services.${DEV_COMPOSE_PROJECT_NAME}-soketi-web-secure.loadbalancer.server.port=6001"
# Terminal WebSocket (port 6002) on main Coolify domain
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-soketi-terminal.rule=Host(`${DEV_COOLIFY_TRAEFIK_HOST}`) && PathPrefix(`/terminal/ws`)"
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-soketi-terminal.entrypoints=web-secure"
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-soketi-terminal.tls.certresolver=resolver"
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-soketi-terminal.priority=100"
# Service for terminal
- "traefik.http.services.${DEV_COMPOSE_PROJECT_NAME}-soketi-terminal.loadbalancer.server.port=6002"
- "traefik.docker.network=${NETWORK_NAME}"
# Watchtower
- "com.centurylinklabs.watchtower.enable=${WATCHTOWER_LABEL_ENABLE}"
# Coolify Terminal (WebSocket server for terminal on port 6002)
coolify_terminal:
image: ${DEV_COOLIFY_REALTIME_IMAGE:-ghcr.io/coollabsio/coolify-realtime:1.0.10}
container_name: ${DEV_COMPOSE_PROJECT_NAME}_coolify_terminal
restart: unless-stopped
environment:
- SOKETI_DEFAULT_APP_ID=${DEV_COOLIFY_PUSHER_APP_ID}
- SOKETI_DEFAULT_APP_KEY=${DEV_COOLIFY_PUSHER_APP_KEY}
- SOKETI_DEFAULT_APP_SECRET=${DEV_COOLIFY_PUSHER_APP_SECRET}
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:6002/ready"]
interval: 5s
timeout: 5s
retries: 10
networks:
- compose_network
# n8n - Workflow automation platform
n8n:
image: ${DEV_N8N_IMAGE:-docker.n8n.io/n8nio/n8n}