361 lines
12 KiB
YAML
361 lines
12 KiB
YAML
version: '3.8'
|
|
services:
|
|
mysql:
|
|
container_name: "mysql"
|
|
image: mysql:5.7
|
|
volumes:
|
|
- ./database/oai_db.sql:/docker-entrypoint-initdb.d/oai_db.sql
|
|
- ./healthscripts/mysql-healthcheck2.sh:/tmp/mysql-healthcheck.sh
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- MYSQL_DATABASE=oai_db
|
|
- MYSQL_USER=test
|
|
- MYSQL_PASSWORD=test
|
|
- MYSQL_ROOT_PASSWORD=linux
|
|
healthcheck:
|
|
test: /bin/bash -c "/tmp/mysql-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.131
|
|
oai-udr:
|
|
container_name: "oai-udr"
|
|
image: oai-udr:develop
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- INSTANCE=0
|
|
- PID_DIRECTORY=/var/run
|
|
- UDR_NAME=OAI_UDR
|
|
- UDR_INTERFACE_NAME_FOR_NUDR=eth0
|
|
- UDR_INTERFACE_PORT_FOR_NUDR=80
|
|
- UDR_INTERFACE_HTTP2_PORT_FOR_NUDR=8080
|
|
- USE_HTTP2=no
|
|
- UDR_API_VERSION=v1
|
|
- MYSQL_IPV4_ADDRESS=192.168.70.131
|
|
- MYSQL_USER=test
|
|
- MYSQL_PASS=test
|
|
- DB_CONNECTION_TIMEOUT=300 # Reset the connection to the DB after expiring the timeout (in second) currently can't be changed
|
|
- MYSQL_DB=oai_db
|
|
- WAIT_MYSQL=120
|
|
- USE_FQDN_DNS=yes
|
|
- REGISTER_NRF=yes
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- NRF_API_VERSION=v1
|
|
- NRF_FQDN=oai-nrf
|
|
depends_on:
|
|
- mysql
|
|
- oai-nrf
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.136
|
|
volumes:
|
|
- ./healthscripts/udr-healthcheck.sh:/openair-udr/bin/udr-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-udr/bin/udr-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
oai-udm:
|
|
container_name: "oai-udm"
|
|
image: oai-udm:develop
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- INSTANCE=0
|
|
- PID_DIRECTORY=/var/run
|
|
- UDM_NAME=OAI_UDM
|
|
- SBI_IF_NAME=eth0
|
|
- SBI_PORT=80
|
|
- SBI_HTTP2_PORT=8080
|
|
- USE_HTTP2=no
|
|
- UDM_VERSION_NB=v1
|
|
- USE_FQDN_DNS=yes
|
|
- UDR_IP_ADDRESS=192.168.70.136
|
|
- UDR_PORT=80
|
|
- UDR_VERSION_NB=v1
|
|
- UDR_FQDN=oai-udr
|
|
- REGISTER_NRF=yes
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- NRF_API_VERSION=v1
|
|
- NRF_FQDN=oai-nrf
|
|
depends_on:
|
|
- oai-udr
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.137
|
|
volumes:
|
|
- ./healthscripts/udm-healthcheck.sh:/openair-udm/bin/udm-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-udm/bin/udm-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
oai-ausf:
|
|
container_name: "oai-ausf"
|
|
image: oai-ausf:develop
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- INSTANCE_ID=0
|
|
- PID_DIR=/var/run
|
|
- AUSF_NAME=OAI_AUSF
|
|
- SBI_IF_NAME=eth0
|
|
- SBI_PORT=80
|
|
- USE_HTTP2
|
|
- SBI_HTTP2_PORT
|
|
- USE_FQDN_DNS=yes
|
|
- UDM_IP_ADDRESS=192.168.70.137
|
|
- UDM_PORT=80
|
|
- UDM_VERSION_NB=v1
|
|
- UDM_FQDN=oai-udm
|
|
- REGISTER_NRF=yes
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- NRF_API_VERSION=v1
|
|
- NRF_FQDN=oai-nrf
|
|
depends_on:
|
|
- oai-udm
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.138
|
|
volumes:
|
|
- ./healthscripts/ausf-healthcheck.sh:/openair-ausf/bin/ausf-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-ausf/bin/ausf-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
oai-nrf:
|
|
container_name: "oai-nrf"
|
|
image: oai-nrf:develop
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- NRF_INTERFACE_NAME_FOR_SBI=eth0
|
|
- NRF_INTERFACE_PORT_FOR_SBI=80
|
|
- NRF_INTERFACE_HTTP2_PORT_FOR_SBI=8080
|
|
- NRF_API_VERSION=v1
|
|
- INSTANCE=0
|
|
- PID_DIRECTORY=/var/run
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.130
|
|
volumes:
|
|
- ./healthscripts/nrf-healthcheck.sh:/openair-nrf/bin/nrf-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-nrf/bin/nrf-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
oai-amf:
|
|
container_name: "oai-amf"
|
|
image: oai-amf:develop
|
|
environment:
|
|
- TZ=Europe/paris
|
|
- INSTANCE=0
|
|
- PID_DIRECTORY=/var/run
|
|
- MCC=208
|
|
- MNC=99
|
|
- REGION_ID=128
|
|
- AMF_SET_ID=1
|
|
- SERVED_GUAMI_MCC_0=208
|
|
- SERVED_GUAMI_MNC_0=99
|
|
- 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=99
|
|
- PLMN_SUPPORT_TAC=0x0001
|
|
- SST_0=1
|
|
- SD_0=0x1
|
|
- AMF_INTERFACE_NAME_FOR_NGAP=eth0
|
|
- AMF_INTERFACE_NAME_FOR_N11=eth0
|
|
- SMF_INSTANCE_ID_0=1
|
|
- SMF_FQDN_0=oai-smf
|
|
- SMF_IPV4_ADDR_0=192.168.70.133
|
|
- SMF_HTTP_VERSION_0=v1
|
|
- SELECTED_0=true
|
|
- SMF_INSTANCE_ID_1=2
|
|
- SMF_FQDN_1=oai-smf
|
|
- SMF_IPV4_ADDR_1=0.0.0.0
|
|
- SMF_HTTP_VERSION_1=v1
|
|
- SELECTED_1=false
|
|
- MYSQL_SERVER=192.168.70.131
|
|
- MYSQL_USER=root
|
|
- MYSQL_PASS=linux
|
|
- MYSQL_DB=oai_db
|
|
- OPERATOR_KEY=1006020f0a478bf6b699f15c062e42b3
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- EXTERNAL_NRF=no
|
|
- NF_REGISTRATION=yes
|
|
- SMF_SELECTION=yes
|
|
- USE_FQDN_DNS=yes
|
|
- EXTERNAL_AUSF=yes
|
|
- EXTERNAL_UDM=no
|
|
- EXTERNAL_NSSF=no
|
|
- USE_HTTP2=no
|
|
- NRF_API_VERSION=v1
|
|
- NRF_FQDN=oai-nrf
|
|
- AUSF_IPV4_ADDRESS=192.168.70.138
|
|
- AUSF_PORT=80
|
|
- AUSF_API_VERSION=v1
|
|
- AUSF_FQDN=oai-ausf
|
|
- UDM_IPV4_ADDRESS=192.168.70.137
|
|
- UDM_PORT=80
|
|
- UDM_API_VERSION=v2
|
|
- UDM_FQDN=oai-udm
|
|
depends_on:
|
|
- mysql
|
|
- oai-nrf
|
|
- oai-ausf
|
|
volumes:
|
|
- ./healthscripts/amf-healthcheck.sh:/openair-amf/bin/amf-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-amf/bin/amf-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 15s
|
|
retries: 5
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.132
|
|
oai-smf:
|
|
container_name: "oai-smf"
|
|
image: oai-smf:develop
|
|
environment:
|
|
- TZ=Europe/Paris
|
|
- INSTANCE=0
|
|
- 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
|
|
- SMF_API_VERSION=v1
|
|
- DEFAULT_DNS_IPV4_ADDRESS=8.8.8.8
|
|
- DEFAULT_DNS_SEC_IPV4_ADDRESS=4.4.4.4
|
|
- AMF_IPV4_ADDRESS=192.168.70.132
|
|
- AMF_PORT=80
|
|
- AMF_API_VERSION=v1
|
|
- AMF_FQDN=oai-amf
|
|
- UDM_IPV4_ADDRESS=192.168.70.137
|
|
- UDM_PORT=80
|
|
- UDM_API_VERSION=v2
|
|
- UDM_FQDN=oai-udm
|
|
- UPF_IPV4_ADDRESS=192.168.70.134
|
|
- UPF_FQDN_0=oai-spgwu
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- NRF_API_VERSION=v1
|
|
- USE_LOCAL_SUBSCRIPTION_INFO=yes #Set to yes if SMF uses local subscription information instead of from an UDM
|
|
- USE_NETWORK_INSTANCE=no #Set yes if network instance is to be used for given UPF
|
|
- NRF_FQDN=oai-nrf
|
|
- REGISTER_NRF=yes
|
|
- DISCOVER_UPF=yes
|
|
- USE_FQDN_DNS=yes
|
|
- HTTP_VERSION=1 # Default: 1
|
|
- UE_MTU=1500
|
|
- DNN_NI0=oai
|
|
- TYPE0=IPv4
|
|
- DNN_RANGE0=12.1.1.2 - 12.1.1.253
|
|
- NSSAI_SST0=1
|
|
- NSSAI_SD0=0x1
|
|
- SESSION_AMBR_UL0=1000Mbps
|
|
- SESSION_AMBR_DL0=1000Mbps
|
|
- DEFAULT_CSCF_IPV4_ADDRESS=127.0.0.1 # only needed when ims is being used
|
|
- ENABLE_USAGE_REPORTING=no # Set yes if UE USAGE REPORTING is to be done at UPF
|
|
depends_on:
|
|
- oai-nrf
|
|
- oai-amf
|
|
volumes:
|
|
- ./healthscripts/smf-healthcheck.sh:/openair-smf/bin/smf-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-smf/bin/smf-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.133
|
|
oai-spgwu:
|
|
container_name: "oai-spgwu"
|
|
image: oai-spgwu-tiny:develop
|
|
environment:
|
|
- 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
|
|
- NETWORK_UE_IP=12.1.1.0/24
|
|
- SPGWC0_IP_ADDRESS=192.168.70.133
|
|
- BYPASS_UL_PFCP_RULES=no
|
|
- MCC=208
|
|
- MNC=99
|
|
- MNC03=099
|
|
- TAC=1
|
|
- GW_ID=1
|
|
- THREAD_S1U_PRIO=80
|
|
- S1U_THREADS=8
|
|
- THREAD_SX_PRIO=81
|
|
- SX_THREADS=1
|
|
- THREAD_SGI_PRIO=80
|
|
- SGI_THREADS=8
|
|
- REALM=openairinterface.org
|
|
- ENABLE_5G_FEATURES=yes
|
|
- REGISTER_NRF=yes
|
|
- USE_FQDN_NRF=yes
|
|
- UPF_FQDN_5G=oai-spgwu
|
|
- NRF_IPV4_ADDRESS=192.168.70.130
|
|
- NRF_PORT=80
|
|
- NRF_API_VERSION=v1
|
|
- NRF_FQDN=oai-nrf
|
|
- NSSAI_SST_0=1
|
|
- NSSAI_SD_0=0x1
|
|
- DNN_0=oai
|
|
depends_on:
|
|
- oai-nrf
|
|
- oai-smf
|
|
cap_add:
|
|
- NET_ADMIN
|
|
- SYS_ADMIN
|
|
cap_drop:
|
|
- ALL
|
|
privileged: true
|
|
volumes:
|
|
- ./healthscripts/spgwu-healthcheck.sh:/openair-spgwu-tiny/bin/spgwu-healthcheck.sh
|
|
healthcheck:
|
|
test: /bin/bash -c "/openair-spgwu-tiny/bin/spgwu-healthcheck.sh"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.134
|
|
oai-ext-dn:
|
|
image: trf-gen-cn5g:latest
|
|
privileged: true
|
|
container_name: oai-ext-dn
|
|
entrypoint: /bin/bash -c \
|
|
"ip route add 12.1.1.0/24 via 192.168.70.134 dev eth0; sleep infinity"
|
|
depends_on:
|
|
- oai-spgwu
|
|
networks:
|
|
public_net:
|
|
ipv4_address: 192.168.70.135
|
|
networks:
|
|
# public_net:
|
|
# external:
|
|
# name: demo-oai-public-net
|
|
public_net:
|
|
driver: bridge
|
|
name: demo-oai-public-net
|
|
ipam:
|
|
config:
|
|
- subnet: 192.168.70.128/26
|
|
driver_opts:
|
|
com.docker.network.bridge.name: "demo-oai"
|