46614fe3621c36b264995c71c2b9f47f262a60f3
[oam.git] / solution / smo / apps / docker-compose.yaml
1 # no more versions needed! Compose spec supports all features w/o a version
2 services:
3
4   flows:
5     image: ${FLOWS_IMAGE}-configured
6     build:
7       context: ./flows
8       args:
9         - BASEIMAGE=${FLOWS_IMAGE}
10     container_name: flows
11     hostname: flows
12     extra_hosts:
13       - "flows.oam.${SOLUTION_DOMAIN}:${HOST_IP}"
14     environment:
15       APP_VENDOR: ${APP_VENDOR}
16       APP_SOURCE: ${APP_SOURCE}
17       APP_NETWORK_FUNCTION_ID: ${APP_NETWORK_FUNCTION_ID}
18       SDN_CONTROLLER_PROTOCOL: https
19       SDN_CONTROLLER_HOST: controller.dcn.${SOLUTION_DOMAIN}
20       SDN_CONTROLLER_PORT: 443
21       SDN_CONTROLLER_USERNAME: ${ADMIN_USERNAME}
22       SDN_CONTROLLER_PASSWORD: ${ADMIN_PASSWORD}
23       VES_ENDPOINT_PROTOCOL: https
24       VES_ENDPOINT_HOST: ves-collector.dcn.${SOLUTION_DOMAIN}
25       VES_ENDPOINT_PORT: 443
26       VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
27       VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
28       VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
29       MESSAGES_PROTOCOL: https
30       MESSAGES_HOST: messages.${SOLUTION_DOMAIN}
31       MESSAGES_PORT: 443
32       KAFKA_BRIDGE_PROTOCOL: https
33       KAFKA_BRIDGE_HOST: kafka-bridge.${SOLUTION_DOMAIN}
34       KAFKA_BRIDGE_PORT: 443
35       KAFKA_BRIDGE_CONSUMER_GROUP: app
36       KAFKA_BRIDGE_CONSUMER_NAME: message-consumer
37     labels:
38       traefik.enable: true
39       traefik.http.routers.flows.entrypoints: websecure
40       traefik.http.routers.flows.rule: Host(`flows.oam.${SOLUTION_DOMAIN}`)
41       traefik.http.routers.flows.tls: true
42       traefik.http.services.flows.loadbalancer.server.port: 1880
43     volumes:
44       - ./flows/data:/data
45     networks:
46       dmz:
47
48   tests:
49     image: ${TESTS_IMAGE}
50     privileged: true
51     user: root
52     container_name: tests
53     hostname: tests
54     volumes:
55      - /var/run/docker.sock:/var/run/docker.sock:ro
56      - ./jenkins:/var/jenkins_home
57     labels:
58       traefik.enable: true
59       traefik.http.routers.tests.entrypoints: websecure
60       traefik.http.routers.tests.rule: Host(`tests.oam.${SOLUTION_DOMAIN}`)
61       traefik.http.routers.tests.tls: true
62       traefik.http.services.tests.loadbalancer.server.port: 8080
63     networks:
64       dmz:
65
66   wireshark:
67     image: "${WIRESHARK_IMAGE}"
68     container_name: wireshark
69     cap_add:
70       - NET_ADMIN
71     network_mode: host
72     environment:
73       - PUID=1000
74       - PGID=1000
75       - TZ=Etc/UTC
76     volumes:
77       - ./wireshark:/config
78     # no port mappbecause of network mode host.
79     # ports:
80     #   - 3000:3000
81     restart: unless-stopped
82     # labels:
83     #   traefik.enable: true
84     #   traefik.http.routers.wireshark.entrypoints: websecure
85     #   traefik.http.routers.wireshark.rule: Host(`wireshark.oam.${SOLUTION_DOMAIN}`)
86     #   traefik.http.routers.wireshark.tls: true
87     #   traefik.http.services.wireshark.loadbalancer.server.port: 3000
88     # networks:
89     #   dmz:
90     #   dcn:
91
92 networks:
93   dmz:
94     external: true