Skip to content
Snippets Groups Projects
docker-compose.tplt 6.71 KiB
Newer Older
version: '3.8'
services:
    cicd_mysql:
        container_name: cicd-mysql-svr
        image: mysql:5.7
        ports:
             - 3306
        command: --init-file /docker-entrypoint-initdb.d/oai_db.sql
            - ../../docker-compose/oai_db.sql:/docker-entrypoint-initdb.d/oai_db.sql:rw
            - TZ=Europe/Paris
            - MYSQL_DATABASE=oai_db
            - MYSQL_USER=test
            - MYSQL_PASSWORD=test
            - MYSQL_ROOT_PASSWORD=linux
        healthcheck:
            test: "/usr/bin/mysql --user=root --password=linux -e 'show databases;'"
            interval: 10s
            timeout: 5s
            retries: 5
        networks:
            cicd_public_net:
                ipv4_address: 192.168.61.194

    cicd_oai_nrf:
        container_name: cicd-oai-nrf
        image: oai-nrf:NRF_IMAGE_TAG
        ports:
            - 80
            - 9090
        environment:
            - TZ=Europe/Paris
            - NRF_INTERFACE_NAME_FOR_SBI=eth0
            - NRF_INTERFACE_PORT_FOR_SBI=80
            - NRF_INTERFACE_HTTP2_PORT_FOR_SBI=9090
            - NRF_API_VERSION=v1
            - INSTANCE=0
            - PID_DIRECTORY=/var/run
        networks:
            cicd_public_net:
                ipv4_address: 192.168.61.195
        volumes:
            - ./nrf-healthy-check.sh:/openair-nrf/bin/nrf-healthy-check.sh
        healthcheck:
            test: /bin/bash -c "/openair-nrf/bin/nrf-healthy-check.sh"
            interval: 10s
            timeout: 5s
            retries: 5

    cicd_oai_amf:
        container_name: cicd-oai-amf
        image: oai-amf:AMF_IMAGE_TAG
        ports:
             - 38412
             - 80
        environment:
            - PID_DIRECTORY=/var/run
            - MCC=208
            - MNC=95
            - REGION_ID=128
            - AMF_SET_ID=1
            - SERVED_GUAMI_MCC_0=208
            - SERVED_GUAMI_MNC_0=95
            - SERVED_GUAMI_REGION_ID_0=128
            - SERVED_GUAMI_AMF_SET_ID_0=1
            - SERVED_GUAMI_MCC_1=460
            - SERVED_GUAMI_MNC_1=11
            - SERVED_GUAMI_REGION_ID_1=10
            - SERVED_GUAMI_AMF_SET_ID_1=1
            - PLMN_SUPPORT_MCC=208
            - PLMN_SUPPORT_MNC=95
            - PLMN_SUPPORT_TAC=0xa000
            - SST_0=222
            - SD_0=123
            - SST_1=1
            - SD_1=12
            - AMF_INTERFACE_NAME_FOR_NGAP=eth0
            - AMF_INTERFACE_NAME_FOR_N11=eth0
            - SMF_INSTANCE_ID_0=1
            - SMF_IPV4_ADDR_0=192.168.61.197
            - SMF_HTTP_VERSION_0=v1
            - SELECTED_0=true
            - SMF_INSTANCE_ID_1=2
            - SMF_IPV4_ADDR_1=192.168.61.197
            - SMF_HTTP_VERSION_1=v1
            - SELECTED_1=false
            - MYSQL_SERVER=cicd-mysql-svr
            - MYSQL_USER=root
            - MYSQL_PASS=linux
            - MYSQL_DB=oai_db
            - OPERATOR_KEY=63bfa50ee6523365ff14c1f45f88737d
            - NRF_IPV4_ADDRESS=192.168.61.195
            - NRF_PORT=80
            - NF_REGISTRATION=yes
            - SMF_SELECTION=yes
            - NRF_API_VERSION=v1
            - AUSF_IPV4_ADDRESS=192.168.61.210
            - AUSF_PORT=80
            - AUSF_API_VERSION=v1
        depends_on:
            - cicd_mysql
            - cicd_oai_nrf
        networks:
            cicd_public_net:
                ipv4_address: 192.168.61.196
        volumes:
            - ./amf-healthy-check.sh:/openair-amf/bin/amf-healthy-check.sh
        healthcheck:
            test: /bin/bash -c "/openair-amf/bin/amf-healthy-check.sh"
            interval: 10s
            timeout: 5s
            retries: 5

    cicd_oai_smf:
        container_name: cicd-oai-smf
        image: oai-smf:SMF_IMAGE_TAG
        ports:
            - 80
            - TZ=Europe/Paris
            - PID_DIRECTORY=/var/run
            - SMF_INTERFACE_NAME_FOR_N4=eth0
            - SMF_INTERFACE_NAME_FOR_SBI=eth0
            - SMF_INTERFACE_PORT_FOR_SBI=80
            - SMF_INTERFACE_HTTP2_PORT_FOR_SBI=9090
            - DEFAULT_DNS_IPV4_ADDRESS=192.168.18.129
            - DEFAULT_DNS_SEC_IPV4_ADDRESS=4.4.4.4
            - AMF_API_VERSION=v1
            - UDM_IPV4_ADDRESS=127.0.0.1
            - UDM_API_VERSION=v1
            - UPF_IPV4_ADDRESS=192.168.61.198
            - NRF_IPV4_ADDRESS=192.168.61.195
            - NRF_PORT=80
            - NRF_API_VERSION=v1
            - REGISTER_NRF=yes
            - DISCOVER_UPF=yes
        depends_on:
            - cicd_oai_nrf
            - cicd_oai_amf
        networks:
            cicd_public_net:
                ipv4_address: 192.168.61.197
        volumes:
            - ./smf-healthy-check.sh:/oai-cn5g-smf/bin/smf-healthy-check.sh
        healthcheck:
            test: /bin/bash -c "/oai-cn5g-smf/bin/smf-healthy-check.sh"
            interval: 10s
            timeout: 5s
            retries: 5

    cicd_oai_upf:
        container_name: cicd-oai-upf
        image: oai-spgwu-tiny:SPGWU_IMAGE_TAG
            - TZ=Europe/Paris
            - PID_DIRECTORY=/var/run
            - SGW_INTERFACE_NAME_FOR_S1U_S12_S4_UP=eth0
            - SGW_INTERFACE_NAME_FOR_SX=eth0
            - PGW_INTERFACE_NAME_FOR_SGI=eth0
            #- NETWORK_UE_NAT_OPTION=yes
            #- THREAD_S1U_PRIO=9090
            #- S1U_THREADS=16
            #- THREAD_SX_PRIO=64
            #- SX_THREADS=1
            #- THREAD_SGI_PRIO=64
            #- SGI_THREADS=16
            #- BYPASS_UL_PFCP_RULES=no
            #- MCC=208
            #- MNC=95
            #- MNC03=095
            #- TAC=40960
            #- GW_ID=1
            #- REALM=openairinterface.org
            - NRF_IPV4_ADDRESS=192.168.61.195
            - NRF_PORT=80
            - NRF_API_VERSION=v1
            - REGISTER_NRF=yes
            - cicd_oai_nrf
            - cicd_oai_smf
        cap_add:
            - NET_ADMIN
            - SYS_ADMIN
        cap_drop:
            - ALL
        privileged: true
        networks:
            cicd_public_net:
                ipv4_address: 192.168.61.198
        volumes:
            - ./upf-healthy-check.sh:/openair-spgwu-tiny/bin/upf-healthy-check.sh
        healthcheck:
            test: /bin/bash -c "/openair-spgwu-tiny/bin/upf-healthy-check.sh"
            interval: 10s
            timeout: 5s
            retries: 5

networks:
    cicd_public_net:
        name: cicd-oai-public-net
        driver: bridge
        ipam:
            config:
                - subnet: 192.168.61.192/26