version: '3.8' services: free5gc-upf: container_name: upf image: free5gc/upf:v3.3.0 command: bash -c "./upf-iptables.sh && ./upf -c ./config/upfcfg.yaml" volumes: - ./config/upfcfg.yaml:/free5gc/config/upfcfg.yaml - ./config/upf-iptables.sh:/free5gc/upf-iptables.sh cap_add: - NET_ADMIN networks: privnet: aliases: - upf.free5gc.org db: container_name: mongodb image: mongo command: mongod --port 27017 expose: - "27017" volumes: - dbdata:/data/db networks: privnet: aliases: - db free5gc-nrf: container_name: nrf image: free5gc/nrf:v3.3.0 command: ./nrf -c ./config/nrfcfg.yaml expose: - "8000" volumes: - ./config/nrfcfg.yaml:/free5gc/config/nrfcfg.yaml environment: DB_URI: mongodb://db/free5gc GIN_MODE: release networks: privnet: aliases: - nrf.free5gc.org depends_on: - db free5gc-amf: container_name: amf image: free5gc/amf:v3.3.0 command: ./amf -c ./config/amfcfg.yaml expose: - "8000" volumes: - ./config/amfcfg.yaml:/free5gc/config/amfcfg.yaml environment: GIN_MODE: release networks: privnet: aliases: - amf.free5gc.org depends_on: - free5gc-nrf free5gc-ausf: container_name: ausf image: free5gc/ausf:v3.3.0 command: ./ausf -c ./config/ausfcfg.yaml expose: - "8000" volumes: - ./config/ausfcfg.yaml:/free5gc/config/ausfcfg.yaml environment: GIN_MODE: release networks: privnet: aliases: - ausf.free5gc.org depends_on: - free5gc-nrf free5gc-nssf: container_name: nssf image: free5gc/nssf:v3.3.0 command: ./nssf -c ./config/nssfcfg.yaml expose: - "8000" volumes: - ./config/nssfcfg.yaml:/free5gc/config/nssfcfg.yaml environment: GIN_MODE: release networks: privnet: aliases: - nssf.free5gc.org depends_on: - free5gc-nrf free5gc-pcf: container_name: pcf image: free5gc/pcf:v3.3.0 command: ./pcf -c ./config/pcfcfg.yaml expose: - "8000" volumes: - ./config/pcfcfg.yaml:/free5gc/config/pcfcfg.yaml environment: GIN_MODE: release networks: privnet: aliases: - pcf.free5gc.org depends_on: - free5gc-nrf free5gc-smf: container_name: smf image: free5gc/smf:v3.3.0 command: ./smf -c ./config/smfcfg.yaml -u ./config/uerouting.yaml expose: - "8000" volumes: - ./config/smfcfg.yaml:/free5gc/config/smfcfg.yaml - ./config/uerouting.yaml:/free5gc/config/uerouting.yaml environment: GIN_MODE: release networks: privnet: aliases: - smf.free5gc.org depends_on: - free5gc-nrf - free5gc-upf free5gc-udm: container_name: udm image: free5gc/udm:v3.3.0 command: ./udm -c ./config/udmcfg.yaml expose: - "8000" volumes: - ./config/udmcfg.yaml:/free5gc/config/udmcfg.yaml environment: GIN_MODE: release networks: privnet: aliases: - udm.free5gc.org depends_on: - db - free5gc-nrf free5gc-udr: container_name: udr image: free5gc/udr:v3.3.0 command: ./udr -c ./config/udrcfg.yaml expose: - "8000" volumes: - ./config/udrcfg.yaml:/free5gc/config/udrcfg.yaml environment: DB_URI: mongodb://db/free5gc GIN_MODE: release networks: privnet: aliases: - udr.free5gc.org depends_on: - db - free5gc-nrf free5gc-n3iwf: container_name: n3iwf image: free5gc/n3iwf:v3.3.0 command: sh -c "./n3iwf-ipsec.sh && ./n3iwf -c ./config/n3iwfcfg.yaml" volumes: - ./config/n3iwfcfg.yaml:/free5gc/config/n3iwfcfg.yaml - ./config/n3iwf-ipsec.sh:/free5gc/n3iwf-ipsec.sh environment: GIN_MODE: release cap_add: - NET_ADMIN networks: privnet: aliases: - n3iwf.free5gc.org depends_on: - free5gc-amf - free5gc-smf - free5gc-upf free5gc-webui: container_name: webui image: free5gc/webui:v3.3.0 command: ./webui -c ./config/webuicfg.yaml volumes: - ./config/webuicfg.yaml:/free5gc/config/webuicfg.yaml environment: - GIN_MODE=release networks: privnet: aliases: - webui ports: - "5000:5000" depends_on: - db ueransim: container_name: ueransim image: free5gc/ueransim:latest #command: ./nr-gnb -c ./config/gnbcfg.yaml entrypoint: tail -f /dev/null volumes: - ./config/gnbcfg.yaml:/ueransim/config/gnbcfg.yaml cap_add: - NET_ADMIN devices: - "/dev/net/tun" networks: privnet: aliases: - gnb.free5gc.org depends_on: - free5gc-amf - free5gc-upf ueransim-ue: container_name: ueransim-ue image: free5gc/ueransim:latest #command: ./nr-ue -c ./config/uecfg.yaml -n 1 entrypoint: tail -f /dev/null volumes: - ./config/uecfg.yaml:/ueransim/config/uecfg.yaml cap_add: - NET_ADMIN devices: - "/dev/net/tun" networks: privnet: aliases: - ue.free5gc.org depends_on: - free5gc-amf #- free5gc-upf networks: privnet: ipam: driver: default config: - subnet: 10.100.200.0/24 driver_opts: com.docker.network.bridge.name: br-free5gc volumes: dbdata: