704 lines
15 KiB
YAML
704 lines
15 KiB
YAML
services:
|
|
mongo:
|
|
image: mongo:6.0
|
|
container_name: mongo
|
|
command: --bind_ip 0.0.0.0
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- mongodbdata:/data/db
|
|
- mongodbdata:/data/configdb
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "27017/udp"
|
|
- "27017/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${MONGO_IP}
|
|
webui:
|
|
image: docker_open5gs
|
|
container_name: webui
|
|
depends_on:
|
|
- mongo
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=webui
|
|
volumes:
|
|
- ./webui:/mnt/webui
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "9999/tcp"
|
|
ports:
|
|
- "9999:9999/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${WEBUI_IP}
|
|
nrf:
|
|
image: docker_open5gs
|
|
container_name: nrf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=nrf-1
|
|
volumes:
|
|
- ./nrf:/mnt/nrf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${NRF_IP}
|
|
scp:
|
|
image: docker_open5gs
|
|
container_name: scp
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=scp-1
|
|
volumes:
|
|
- ./scp:/mnt/scp
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SCP_IP}
|
|
ausf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
container_name: ausf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=ausf-1
|
|
volumes:
|
|
- ./ausf:/mnt/ausf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${AUSF_IP}
|
|
udr:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- mongo
|
|
container_name: udr
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=udr-1
|
|
volumes:
|
|
- ./udr:/mnt/udr
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${UDR_IP}
|
|
udm:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
container_name: udm
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=udm-1
|
|
volumes:
|
|
- ./udm:/mnt/udm
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${UDM_IP}
|
|
pcf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- mongo
|
|
container_name: pcf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=pcf-1
|
|
volumes:
|
|
- ./pcf:/mnt/pcf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
- "9091/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${PCF_IP}
|
|
bsf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- mongo
|
|
container_name: bsf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=bsf-1
|
|
volumes:
|
|
- ./bsf:/mnt/bsf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${BSF_IP}
|
|
nssf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- mongo
|
|
container_name: nssf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=nssf-1
|
|
volumes:
|
|
- ./nssf:/mnt/nssf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "7777/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${NSSF_IP}
|
|
hss:
|
|
image: docker_open5gs
|
|
container_name: hss
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=hss-1
|
|
volumes:
|
|
- ./hss:/mnt/hss
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
depends_on:
|
|
- mongo
|
|
expose:
|
|
- "3868/udp"
|
|
- "3868/tcp"
|
|
- "3868/sctp"
|
|
- "5868/udp"
|
|
- "5868/tcp"
|
|
- "5868/sctp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${HSS_IP}
|
|
sgwc:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- smf
|
|
- upf
|
|
container_name: sgwc
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=sgwc-1
|
|
volumes:
|
|
- ./sgwc:/mnt/sgwc
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "2123/udp"
|
|
- "8805/udp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SGWC_IP}
|
|
sgwu:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- smf
|
|
- upf
|
|
container_name: sgwu
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=sgwu-1
|
|
volumes:
|
|
- ./sgwu:/mnt/sgwu
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "8805/udp"
|
|
- "2152/udp"
|
|
# ports:
|
|
# - "2152:2152/udp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SGWU_IP}
|
|
smf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- amf
|
|
container_name: smf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=smf-1
|
|
- DEPLOY_MODE=ALL
|
|
volumes:
|
|
- ./smf:/mnt/smf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "3868/udp"
|
|
- "3868/tcp"
|
|
- "3868/sctp"
|
|
- "5868/udp"
|
|
- "5868/tcp"
|
|
- "5868/sctp"
|
|
- "8805/udp"
|
|
- "2123/udp"
|
|
- "7777/tcp"
|
|
- "9091/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SMF_IP}
|
|
upf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- smf
|
|
container_name: upf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=upf-1
|
|
volumes:
|
|
- ./upf:/mnt/upf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "2152/udp"
|
|
- "8805/udp"
|
|
- "9091/tcp"
|
|
# ports:
|
|
# - "2152:2152/udp"
|
|
cap_add:
|
|
- NET_ADMIN
|
|
privileged: true
|
|
sysctls:
|
|
- net.ipv4.ip_forward=1
|
|
#- net.ipv6.conf.all.disable_ipv6=0
|
|
networks:
|
|
default:
|
|
ipv4_address: ${UPF_IP}
|
|
amf:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- nrf
|
|
- scp
|
|
- ausf
|
|
- udm
|
|
- udr
|
|
- pcf
|
|
- bsf
|
|
container_name: amf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=amf-1
|
|
volumes:
|
|
- ./amf:/mnt/amf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "38412/sctp"
|
|
- "7777/tcp"
|
|
- "9091/tcp"
|
|
# ports:
|
|
# - "38412:38412/sctp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${AMF_IP}
|
|
mme:
|
|
image: docker_open5gs
|
|
depends_on:
|
|
- hss
|
|
- sgwc
|
|
- sgwu
|
|
- smf
|
|
- upf
|
|
- osmomsc
|
|
container_name: mme
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=mme-1
|
|
volumes:
|
|
- ./mme:/mnt/mme
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "3868/udp"
|
|
- "3868/tcp"
|
|
- "3868/sctp"
|
|
- "5868/udp"
|
|
- "5868/tcp"
|
|
- "5868/sctp"
|
|
- "36412/sctp"
|
|
- "2123/udp"
|
|
- "9091/tcp"
|
|
# ports:
|
|
# - "36412:36412/sctp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${MME_IP}
|
|
pcrf:
|
|
image: docker_open5gs
|
|
container_name: pcrf
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=pcrf-1
|
|
depends_on:
|
|
- mongo
|
|
volumes:
|
|
- ./pcrf:/mnt/pcrf
|
|
- ./log:/open5gs/install/var/log/open5gs
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "3868/udp"
|
|
- "3868/tcp"
|
|
- "3868/sctp"
|
|
- "5868/udp"
|
|
- "5868/tcp"
|
|
- "5868/sctp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${PCRF_IP}
|
|
dns:
|
|
build: ./dns
|
|
image: docker_dns
|
|
container_name: dns
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./dns:/mnt/dns
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "53/udp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${DNS_IP}
|
|
rtpengine:
|
|
build: ./rtpengine
|
|
image: docker_rtpengine
|
|
container_name: rtpengine
|
|
privileged: true
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./rtpengine:/mnt/rtpengine
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
cap_add:
|
|
- NET_ADMIN
|
|
environment:
|
|
- TABLE=0
|
|
- INTERFACE=${RTPENGINE_IP}
|
|
- LISTEN_NG=${RTPENGINE_IP}:2223
|
|
- PIDFILE=/run/ngcp-rtpengine-daemon.pid
|
|
- PORT_MAX=50000
|
|
- PORT_MIN=49000
|
|
- NO_FALLBACK=no
|
|
- TOS=184
|
|
expose:
|
|
- "2223/udp"
|
|
- "49000-50000/udp"
|
|
# ports:
|
|
# - "49000-50000:49000-50000/udp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${RTPENGINE_IP}
|
|
mysql:
|
|
build: ./mysql
|
|
image: docker_mysql
|
|
container_name: mysql
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- dbdata:/var/lib/mysql
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "3306/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${MYSQL_IP}
|
|
pyhss:
|
|
build: ./pyhss
|
|
image: docker_pyhss
|
|
container_name: pyhss
|
|
dns: ${DNS_IP}
|
|
volumes:
|
|
- ./pyhss:/mnt/pyhss
|
|
- ./pyhss/logs:/pyhss/log/
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
- dns
|
|
- mysql
|
|
expose:
|
|
- "3868/udp"
|
|
- "3868/tcp"
|
|
- "8080/tcp"
|
|
ports:
|
|
- "8080:8080/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${PYHSS_IP}
|
|
icscf:
|
|
image: docker_kamailio
|
|
container_name: icscf
|
|
dns: ${DNS_IP}
|
|
volumes:
|
|
- ./icscf:/mnt/icscf
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=icscf-1
|
|
depends_on:
|
|
- dns
|
|
- mysql
|
|
- pyhss
|
|
expose:
|
|
- "3869/udp"
|
|
- "3869/tcp"
|
|
- "4060/udp"
|
|
- "4060/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${ICSCF_IP}
|
|
scscf:
|
|
image: docker_kamailio
|
|
container_name: scscf
|
|
dns: ${DNS_IP}
|
|
volumes:
|
|
- ./scscf:/mnt/scscf
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=scscf-1
|
|
depends_on:
|
|
- dns
|
|
- mysql
|
|
- pyhss
|
|
expose:
|
|
- "3870/udp"
|
|
- "3870/tcp"
|
|
- "6060/udp"
|
|
- "6060/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SCSCF_IP}
|
|
pcscf:
|
|
image: docker_kamailio
|
|
container_name: pcscf
|
|
dns: ${DNS_IP}
|
|
privileged: true
|
|
cap_add:
|
|
- NET_ADMIN
|
|
volumes:
|
|
- ./pcscf:/mnt/pcscf
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=pcscf-1
|
|
- DEPLOY_MODE=ALL
|
|
depends_on:
|
|
- dns
|
|
- mysql
|
|
- rtpengine
|
|
- icscf
|
|
- scscf
|
|
expose:
|
|
- "3871/udp"
|
|
- "3871/tcp"
|
|
- "5060/tcp"
|
|
- "5060/udp"
|
|
- "5100-5120/tcp"
|
|
- "5100-5120/udp"
|
|
- "6100-6120/tcp"
|
|
- "6100-6120/udp"
|
|
# ports:
|
|
# - "3871:3871/udp"
|
|
# - "3871:3871/tcp"
|
|
# - "5060:5060/tcp"
|
|
# - "5060:5060/udp"
|
|
# - "5100-5120:5100-5120/tcp"
|
|
# - "5100-5120:5100-5120/udp"
|
|
# - "6100-6120:6100-6120/tcp"
|
|
# - "6100-6120:6100-6120/udp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${PCSCF_IP}
|
|
smsc:
|
|
image: docker_kamailio
|
|
container_name: smsc
|
|
dns: ${DNS_IP}
|
|
volumes:
|
|
- ./smsc:/mnt/smsc
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=smsc-1
|
|
depends_on:
|
|
- dns
|
|
- mysql
|
|
expose:
|
|
- "7090/udp"
|
|
- "7090/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${SMSC_IP}
|
|
osmomsc:
|
|
build: ./osmomsc
|
|
image: docker_osmomsc
|
|
container_name: osmomsc
|
|
volumes:
|
|
- ./osmomsc:/mnt/osmomsc
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=osmomsc-1
|
|
depends_on:
|
|
- osmohlr
|
|
expose:
|
|
- "29118/sctp"
|
|
- "2775/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${OSMOMSC_IP}
|
|
osmohlr:
|
|
build: ./osmohlr
|
|
image: docker_osmohlr
|
|
container_name: osmohlr
|
|
volumes:
|
|
- ./osmohlr:/mnt/osmohlr
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- COMPONENT_NAME=osmohlr-1
|
|
expose:
|
|
- "4222/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${OSMOHLR_IP}
|
|
metrics:
|
|
build: ./metrics
|
|
image: docker_metrics
|
|
container_name: metrics
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- ./metrics:/mnt/metrics
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
expose:
|
|
- "9090/tcp"
|
|
ports:
|
|
- "9090:9090/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${METRICS_IP}
|
|
grafana:
|
|
image: grafana/grafana:11.3.0
|
|
container_name: grafana
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- grafana_data:/var/lib/grafana
|
|
- ./grafana/:/etc/grafana/provisioning/
|
|
- ./grafana:/mnt/grafana
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
environment:
|
|
- GF_SECURITY_ADMIN_USER=${GRAFANA_USERNAME}
|
|
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_PASSWORD}
|
|
#- GF_INSTALL_PLUGINS=${GRAFANA_INSTALL_PLUGINS}
|
|
- GF_PATHS_PROVISIONING=/etc/grafana/provisioning
|
|
- GF_PATHS_DATA=/var/lib/grafana
|
|
- METRICS_IP=${METRICS_IP}
|
|
expose:
|
|
- "3000/tcp"
|
|
ports:
|
|
- "3000:3000/tcp"
|
|
networks:
|
|
default:
|
|
ipv4_address: ${GRAFANA_IP}
|
|
networks:
|
|
default:
|
|
name: docker_open5gs_default
|
|
ipam:
|
|
config:
|
|
- subnet: ${TEST_NETWORK}
|
|
volumes:
|
|
grafana_data:
|
|
name: grafana_data
|
|
mongodbdata:
|
|
name: docker_open5gs_mongodbdata
|
|
dbdata:
|
|
name: docker_open5gs_dbdata
|
|
|