docker swarm に Web アプリケーションをデプロイしようとしています。セッションの粘着性を考慮して、Traefik を使用しています。フロントエンド ルールとして、「traefik.frontend.rule=PathPrefixStrip: /TestManager」を含めました。
/TestManager は私のサービスの名前です。ただし、/TestManager に移動しようとすると、ゲートウェイが正しくありません。
これが私のTraefikダッシュボードです:Traefikダッシュボード
TestManager ページを表示するために、フロントエンド ルールとバックエンド ルールのどちらを編集する必要があるかわかりません。
そして、これが私のdocker-composeファイルです:
version: '3'
services:
testmanager:
image: 10.244.102.10:5000/testmanager
networks:
- net
deploy:
mode: replicated
replicas: 3
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
labels:
- "traefik.docker.network=autoframework_net"
- "traefik.port=80"
- "traefik.backend=testmanager"
- "traefik.frontend.rule=PathPrefixStrip: /TestManager"
- "traefik.backend.loadbalancer.sticky=true"
ports:
- "8080"
loadbalancer:
image: traefik
command: --docker \
--docker.swarmmode \
--docker.watch \
--web \
--loglevel=DEBUG
ports:
- 80:80
- 9090:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
deploy:
restart_policy:
condition: any
mode: replicated
replicas: 1
update_config:
delay: 2s
placement:
constraints: [node.role == manager]
networks:
- net
ネットワーク: ネット: