Add NF addressing method as ENV.
[sim/o1-interface.git] / ntsimulator / docker-compose.yaml
1 version: '3.7'
2 services:
3   ntsim-ng:
4     image: "${DOCKER_REPO}ntsim-ng-manager:${NTS_BUILD_VERSION}"
5     container_name: nts-ng-manager
6     stop_grace_period: 5m
7     ports:
8      - "::${NTS_MANAGER_PORT}:830"
9     volumes:
10      - "/var/run/docker.sock:/var/run/docker.sock"
11      - "/usr/bin/docker:/usr/bin/docker"
12     environment:
13       NTS_HOST_IP: "10.20.11.136"
14       NTS_HOST_BASE_PORT: 50000
15       NTS_HOST_NETCONF_SSH_BASE_PORT: 0
16       NTS_HOST_NETCONF_TLS_BASE_PORT: 1000
17       NTS_HOST_TRANSFER_FTP_BASE_PORT: 2000
18       NTS_HOST_TRANSFER_SFTP_BASE_PORT: 2000
19
20       DOCKER_ENGINE_VERSION: "1.40"
21       IPv6_ENABLED: ${IPv6_ENABLED}
22       SSH_CONNECTIONS: ${SSH_CONNECTIONS}
23       TLS_CONNECTIONS: ${TLS_CONNECTIONS}
24             
25       SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
26       SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
27       SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
28       SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
29       SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
30       SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
31
32       VES_COMMON_HEADER_VERSION: ${VES_COMMON_HEADER_VERSION}
33       VES_ENDPOINT_PROTOCOL: ${VES_ENDPOINT_PROTOCOL}
34       VES_ENDPOINT_IP: ${VES_ENDPOINT_IP}
35       VES_ENDPOINT_PORT: ${VES_ENDPOINT_PORT}
36       VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
37       VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
38       VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
39     # networks:
40     #   app_net:
41
42   ntsim-ng-o-ru:
43     image: "${DOCKER_REPO}nts-ng-o-ran-ru-fh:${NTS_BUILD_VERSION}"
44     cap_add:
45       - SYS_ADMIN
46     stop_grace_period: 5m
47     hostname: "O-RAN-O-RU-1"
48     ports:
49      - "::18300:830"
50     environment:
51       IPv6_ENABLED: ${IPv6_ENABLED}
52       SSH_CONNECTIONS: ${SSH_CONNECTIONS}
53       TLS_CONNECTIONS: ${TLS_CONNECTIONS}
54       NTS_NF_STANDALONE_START_FEATURES: ${NTS_NF_STANDALONE_START_FEATURES}
55       NTS_NF_MOUNT_POINT_ADDRESSING_METHOD: ${NTS_NF_MOUNT_POINT_ADDRESSING_METHOD}
56
57       NTS_HOST_IP: ${NTS_HOST_IP}
58       NTS_HOST_BASE_PORT: ${NTS_HOST_BASE_PORT}
59       NTS_HOST_NETCONF_SSH_BASE_PORT: ${NTS_HOST_NETCONF_SSH_BASE_PORT}
60       NTS_HOST_NETCONF_TLS_BASE_PORT: ${NTS_HOST_NETCONF_TLS_BASE_PORT}
61       NTS_HOST_TRANSFER_FTP_BASE_PORT: ${NTS_HOST_TRANSFER_FTP_BASE_PORT}
62       NTS_HOST_TRANSFER_SFTP_BASE_PORT: ${NTS_HOST_TRANSFER_SFTP_BASE_PORT}
63
64       SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
65       SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
66       SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
67       SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
68       SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
69       SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
70
71       VES_COMMON_HEADER_VERSION: ${VES_COMMON_HEADER_VERSION}
72       VES_ENDPOINT_PROTOCOL: ${VES_ENDPOINT_PROTOCOL}
73       VES_ENDPOINT_IP: ${VES_ENDPOINT_IP}
74       VES_ENDPOINT_PORT: ${VES_ENDPOINT_PORT}
75       VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
76       VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
77       VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
78
79     networks:
80       app_net:
81
82   ntsim-ng-o-du:
83     image: "${DOCKER_REPO}nts-ng-o-ran-du:${NTS_BUILD_VERSION}"
84     cap_add:
85       - SYS_ADMIN
86     stop_grace_period: 5m
87     hostname: "O-RAN-O-DU-1"
88     ports:
89      - "::18301:830"
90     environment:
91       IPv6_ENABLED: ${IPv6_ENABLED}
92       SSH_CONNECTIONS: ${SSH_CONNECTIONS}
93       TLS_CONNECTIONS: ${TLS_CONNECTIONS}
94       NTS_NF_STANDALONE_START_FEATURES: ${NTS_NF_STANDALONE_START_FEATURES}
95       NTS_NF_MOUNT_POINT_ADDRESSING_METHOD: ${NTS_NF_MOUNT_POINT_ADDRESSING_METHOD}
96
97       NTS_HOST_IP: ${NTS_HOST_IP}
98       NTS_HOST_BASE_PORT: ${NTS_HOST_BASE_PORT}
99       NTS_HOST_NETCONF_SSH_BASE_PORT: ${NTS_HOST_NETCONF_SSH_BASE_PORT}
100       NTS_HOST_NETCONF_TLS_BASE_PORT: ${NTS_HOST_NETCONF_TLS_BASE_PORT}
101       NTS_HOST_TRANSFER_FTP_BASE_PORT: ${NTS_HOST_TRANSFER_FTP_BASE_PORT}
102       NTS_HOST_TRANSFER_SFTP_BASE_PORT: ${NTS_HOST_TRANSFER_SFTP_BASE_PORT}
103
104       
105       SDN_CONTROLLER_PROTOCOL: ${SDN_CONTROLLER_PROTOCOL}
106       SDN_CONTROLLER_IP: ${SDN_CONTROLLER_IP}
107       SDN_CONTROLLER_PORT: ${SDN_CONTROLLER_PORT}
108       SDN_CONTROLLER_CALLHOME_PORT: ${SDN_CONTROLLER_CALLHOME_PORT}
109       SDN_CONTROLLER_USERNAME: ${SDN_CONTROLLER_USERNAME}
110       SDN_CONTROLLER_PASSWORD: ${SDN_CONTROLLER_PASSWORD}
111
112       VES_COMMON_HEADER_VERSION: ${VES_COMMON_HEADER_VERSION}
113       VES_ENDPOINT_PROTOCOL: ${VES_ENDPOINT_PROTOCOL}
114       VES_ENDPOINT_IP: ${VES_ENDPOINT_IP}
115       VES_ENDPOINT_PORT: ${VES_ENDPOINT_PORT}
116       VES_ENDPOINT_AUTH_METHOD: ${VES_ENDPOINT_AUTH_METHOD}
117       VES_ENDPOINT_USERNAME: ${VES_ENDPOINT_USERNAME}
118       VES_ENDPOINT_PASSWORD: ${VES_ENDPOINT_PASSWORD}
119     networks:
120       app_net:
121   
122 networks:
123   app_net:
124     driver: bridge
125     ipam:
126       driver: default
127
128 # We can attach to any other docker network, like in the example below        
129 # networks:
130 #   default:
131 #     external:
132 #       name: smo_integration