Add docker-compose file for Non-RT-RIC
[oam.git] / solution / integration / smo / non-rt-ric / docker-compose.yml
diff --git a/solution/integration/smo/non-rt-ric/docker-compose.yml b/solution/integration/smo/non-rt-ric/docker-compose.yml
new file mode 100644 (file)
index 0000000..b8c0c3d
--- /dev/null
@@ -0,0 +1,215 @@
+#  Copyright (C) 2021 Nordix Foundation. All rights reserved.
+#  ========================================================================
+#  Licensed under the Apache License, Version 2.0 (the "License");
+#  you may not use this file except in compliance with the License.
+#  You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing, software
+#  distributed under the License is distributed on an "AS IS" BASIS,
+#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  See the License for the specific language governing permissions and
+#  limitations under the License.
+#  ============LICENSE_END=================================================
+#
+version: '3'
+
+networks:
+  nonrtric:
+    driver: bridge
+  oam:
+    external: true
+  smo:
+    external: true
+
+services:
+  policy-agent:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-policy-agent:2.2.0
+    container_name: policy-agent
+    networks:
+      - default
+      - oam
+      - smo
+    ports:
+      - 8091:8081
+      - 8433:8433
+    volumes:
+      - ./config/pms/application_configuration.json:/opt/app/policy-agent/data/application_configuration.json:ro
+    # For using own certs instead of the default ones (built into the container),
+    # place them in config/ directory, update the application-policyagent.yaml file, and uncomment the following lines
+    #  - ./config/pms/keystore-policyagent.jks:/opt/app/policy-agent/etc/cert/keystore.jks:ro
+    #  - ./config/pms/truststore-policyagent.jks:/opt/app/policy-agent/etc/cert/truststore.jks:ro
+    #  - ./config/pms/application-policyagent.yaml:/opt/app/policy-agent/config/application.yaml:ro
+
+  a1-sim-OSC:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0
+    container_name: a1-sim-OSC
+    networks:
+      - default
+      - oam
+      - smo
+    ports:
+      - 30001:8085
+      - 30002:8185
+    environment:
+      - A1_VERSION=OSC_2.1.0
+      - REMOTE_HOSTS_LOGGING=1
+      - ALLOW_HTTP=true
+
+  a1-sim-STD:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0
+    container_name: a1-sim-STD
+    networks:
+      - default
+      - oam
+      - smo
+    ports:
+      - 30003:8085
+      - 30004:8185
+    environment:
+      - A1_VERSION=STD_1.1.3
+      - REMOTE_HOSTS_LOGGING=1
+      - ALLOW_HTTP=true
+
+  a1-sim-STD-v2:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0
+    container_name: a1-sim-STD-v2
+    networks:
+      - default
+      - oam
+      - smo
+    ports:
+      - 30005:8085
+      - 30006:8185
+    environment:
+      - A1_VERSION=STD_2.0.0
+      - REMOTE_HOSTS_LOGGING=1
+      - ALLOW_HTTP=true
+
+  r-app:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-r-app-catalogue:1.1.0
+    container_name: r-app
+    networks:
+      - default
+    ports:
+      - 8680:8680
+      - 8633:8633
+
+  policy-control-panel:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-controlpanel:2.2.0
+    container_name: policy-control-panel
+    networks:
+      - default
+    ports:
+      - 8182:8080
+      - 8082:8082
+    volumes:
+      - ./config/control-panel/nginx.conf:/etc/nginx/nginx.conf:ro
+
+  nonrtric-gateway:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-gateway:0.0.1
+    container_name: nonrtric-gateway
+    networks:
+      - default
+    ports:
+      - 9090:9090
+    volumes:
+      - ./config/nonrtric-gateway/application-nonrtricgateway.yaml:/opt/app/nonrtric-gateway/config/application.yaml:ro
+
+  ecs:
+    image: nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-enrichment-coordinator-service:1.1.0
+    container_name: ecs
+    networks:
+      - default
+    ports:
+      - 8083:8083
+      - 8434:8434
+
+  producer:
+    image: eexit/mirror-http-server
+    container_name: producer
+    networks:
+      - default
+    ports:
+      - 8088:80
+
+  message-generator:
+    image: quay.io/yanhuanwang/message-generator
+    container_name: message-generator
+    networks:
+      - default
+      - smo
+      - oam
+    environment:
+      - MR-HOST=http://onap-dmaap
+      - MR-PORT=3904
+
+  oru-app:
+    image: quay.io/yanhuanwang/oru-app
+    container_name: oru-app
+    networks:
+      - default
+      - oam
+      - smo
+    environment:
+      - MR-HOST=http://onap-dmaap
+      - MR-PORT=3904
+      - SDNR-HOST=http://sdnr
+      - SDNR-PORT=8181
+      - VERBOSE=on
+
+  db:
+    image: mysql/mysql-server:5.6
+    container_name: sdncdb
+    networks:
+      - default
+    ports:
+      - "3306"
+    environment:
+      - MYSQL_ROOT_PASSWORD=itsASecret
+      - MYSQL_ROOT_HOST=%
+      - MYSQL_USER=sdnctl
+      - MYSQL_PASSWORD=gamma
+      - MYSQL_DATABASE=sdnctl
+    logging:
+      driver:   "json-file"
+      options:
+        max-size: "30m"
+        max-file: "5"
+
+  a1controller:
+    image: nexus3.onap.org:10002/onap/sdnc-image:2.1.2
+    depends_on :
+      - db
+    container_name: a1controller
+    networks:
+      - default
+    entrypoint: ["/opt/onap/sdnc/bin/startODL.sh"]
+    ports:
+      - 8282:8181
+      - 8444:8443
+    links:
+      - db:dbhost
+      - db:sdnctldb01
+      - db:sdnctldb02
+    environment:
+      - MYSQL_ROOT_PASSWORD=itsASecret
+      - MYSQL_USER=sdnctl
+      - MYSQL_PASSWORD=gamma
+      - MYSQL_DATABASE=sdnctl
+      - SDNC_CONFIG_DIR=/opt/onap/sdnc/data/properties
+      - SDNC_BIN=/opt/onap/sdnc/bin
+      - ODL_CERT_DIR=/tmp
+      - ODL_ADMIN_USERNAME=admin
+      - ODL_ADMIN_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+      - ODL_USER=admin
+      - ODL_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+      - SDNC_DB_INIT=true
+      - A1_TRUSTSTORE_PASSWORD=a1adapter
+      - AAI_TRUSTSTORE_PASSWORD=changeit
+    logging:
+      driver:   "json-file"
+      options:
+        max-size: "30m"
+        max-file: "5"
\ No newline at end of file