1- version: "3.7"
2-
31services:
42 manual:
53 image: ${VENDOR_MANUAL_IMAGE}
64 init: true
75{% - raw %}
8- hostname: "{{.Node.Hostname}}-{{.Task.Slot}}"
6+ hostname: "v-manual- {{.Node.Hostname}}-{{.Task.Slot}}"
97{% - endraw %}
108 deploy:
119 replicas: ${VENDOR_MANUAL_REPLICAS}
@@ -30,11 +28,77 @@ services:
3028 - traefik.http.services.vendor_manual.loadbalancer.server.port=${VENDOR_MANUAL_PORT}
3129 - traefik.http.routers.vendor_manual.entrypoints=https
3230 - traefik.http.routers.vendor_manual.tls=true
33- - traefik.http.routers.vendor_manual.rule={{ generate_vendors_manual_traefik_rule (VENDOR_MANUAL_PRODUCTS, VENDOR_MANUAL_SUBDOMAIN_PREFIX) }}
31+ - traefik.http.routers.vendor_manual.rule={{ generate_vendors_traefik_rule (VENDOR_MANUAL_PRODUCTS, VENDOR_MANUAL_SUBDOMAIN_PREFIX) }}
3432 - traefik.http.routers.vendor_manual.middlewares=ops_gzip@swarm, authenticated_platform_user@swarm
3533 networks:
3634 - public
37-
35+ chat-backend:
36+ image: ${VENDOR_CHATBOT_BACKEND_IMAGE}
37+ init: true
38+ env_file:
39+ - .env
40+ {% - raw %}
41+ hostname: "v-chat-backend-{{.Node.Hostname}}-{{.Task.Slot}}"
42+ {% - endraw %}
43+ deploy:
44+ replicas: ${VENDOR_CHATBOT_BACKEND_REPLICAS}
45+ placement:
46+ constraints:
47+ - node.labels.simcore==true
48+ resources:
49+ limits:
50+ cpus: "1.0"
51+ memory: 2.5G
52+ reservations:
53+ cpus: "0.1"
54+ memory: 512M
55+ update_config:
56+ parallelism: 1
57+ order: start-first
58+ failure_action: continue
59+ delay: 10s
60+ labels:
61+ - traefik.enable=true
62+ - traefik.swarm.network=${PUBLIC_NETWORK}
63+ - traefik.http.services.vendor_chat_backend.loadbalancer.server.port=${VENDOR_CHATBOT_BACKEND_PORT}
64+ - traefik.http.routers.vendor_chat_backend.entrypoints=https
65+ - traefik.http.routers.vendor_chat_backend.tls=true
66+ - traefik.http.routers.vendor_chat_backend.rule=(PathPrefix(`/v1/`) && ({{ generate_vendors_traefik_rule(VENDOR_CHATBOT_FRONTEND_PRODUCTS, VENDOR_CHATBOT_FRONTEND_SUBDOMAIN_PREFIX) }}))
67+ networks:
68+ - public
69+ chat-frontend:
70+ image: ${VENDOR_CHATBOT_FRONTEND_IMAGE}
71+ init: true
72+ {% - raw %}
73+ hostname: "v-chat-frontend-{{.Node.Hostname}}-{{.Task.Slot}}"
74+ {% - endraw %}
75+ deploy:
76+ replicas: ${VENDOR_CHATBOT_FRONTEND_REPLICAS}
77+ placement:
78+ constraints:
79+ - node.labels.simcore==true
80+ resources:
81+ limits:
82+ cpus: "1.0"
83+ memory: 2.5G
84+ reservations:
85+ cpus: "0.1"
86+ memory: 512M
87+ update_config:
88+ parallelism: 1
89+ order: start-first
90+ failure_action: continue
91+ delay: 10s
92+ labels:
93+ - traefik.enable=true
94+ - traefik.swarm.network=${PUBLIC_NETWORK}
95+ - traefik.http.services.vendor_chat_frontend.loadbalancer.server.port=${VENDOR_CHATBOT_FRONTEND_PORT}
96+ - traefik.http.routers.vendor_chat_frontend.entrypoints=https
97+ - traefik.http.routers.vendor_chat_frontend.tls=true
98+ - traefik.http.routers.vendor_chat_frontend.rule=(!PathPrefix(`/v1/`) && ({{ generate_vendors_traefik_rule(VENDOR_CHATBOT_FRONTEND_PRODUCTS, VENDOR_CHATBOT_FRONTEND_SUBDOMAIN_PREFIX) }}))
99+ - traefik.http.routers.vendor_chat_frontend.middlewares=authenticated_platform_user@swarm
100+ networks:
101+ - public
38102networks:
39103 public:
40104 external: true
0 commit comments