Skip to content

Commit

Permalink
Add deployment using eUPF under custom deployments
Browse files Browse the repository at this point in the history
Co-authored-by: Pedro Valente <[email protected]>
  • Loading branch information
herlesupreeth and o2valente committed Jan 12, 2025
1 parent 7d55243 commit 97a0ae4
Show file tree
Hide file tree
Showing 7 changed files with 1,184 additions and 9 deletions.
12 changes: 3 additions & 9 deletions .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,25 +56,23 @@ jobs:
- image: docker_oai_gnb
context: oai
file: gnb_dockerfile
- image: docker_eupf
context: eupf
file: Dockerfile

runs-on: ubuntu-latest
permissions:
contents: read
packages: write
# This is used to complete the identity challenge
# with sigstore/fulcio when running outside of PRs.
id-token: write

steps:
- name: Checkout repository
uses: actions/checkout@v4

# https://github.com/docker/setup-buildx-action
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

# Login against a Docker registry except on PR
# https://github.com/docker/login-action
- name: Log into registry ${{ env.REGISTRY }}
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
Expand All @@ -83,16 +81,12 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

# Extract metadata (tags, labels) for Docker
# https://github.com/docker/metadata-action
- name: Extract Docker metadata
id: meta
uses: docker/metadata-action@v5
with:
images: ${{ env.REGISTRY }}/${{ github.repository_owner }}/${{ matrix.image }}

# Build and push Docker image with Buildx (don't push on PR)
# https://github.com/docker/build-push-action
- name: Build and push Docker image
id: build-and-push
uses: docker/build-push-action@v6
Expand Down
142 changes: 142 additions & 0 deletions custom_deployments/with_eupf/.custom_env
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
# Set proper timezone to sync times between docker host and containers
#TZ=Europe/Berlin

MCC=001
MNC=01

TEST_NETWORK=172.22.0.0/24
DOCKER_HOST_IP=192.168.1.223

# MONGODB
MONGO_IP=172.22.0.2

# HSS - open5gs
HSS_IP=172.22.0.3

# PCRF
PCRF_IP=172.22.0.4
PCRF_BIND_PORT=3873

# SGW
SGWC_IP=172.22.0.5
SGWU_IP=172.22.0.6
SGWU_ADVERTISE_IP=172.22.0.6

# SMF
SMF_IP=172.22.0.7
SMF_DNS1=8.8.8.8
SMF_DNS2=8.8.4.4

# UPF
UPF_IP=172.22.0.8
UPF_ADVERTISE_IP=172.22.0.8

# MME
MME_IP=172.22.0.9

# AMF
AMF_IP=172.22.0.10

# AUSF
AUSF_IP=172.22.0.11

# NRF
NRF_IP=172.22.0.12

# UDM
UDM_IP=172.22.0.13

# UDR
UDR_IP=172.22.0.14

# IMS DNS
DNS_IP=172.22.0.15

# RTPENGINE
RTPENGINE_IP=172.22.0.16

# MYSQL
MYSQL_IP=172.22.0.17

# PYHSS
PYHSS_IP=172.22.0.18
PYHSS_BIND_PORT=3875

# ICSCF
ICSCF_IP=172.22.0.19
ICSCF_BIND_PORT=3869

# SCSCF
SCSCF_IP=172.22.0.20
SCSCF_BIND_PORT=3870

# PCSCF
PCSCF_IP=172.22.0.21
PCSCF_BIND_PORT=3871

# SRSLTE ENB
SRS_ENB_IP=172.22.0.22

# UERANSIM
NR_GNB_IP=172.22.0.23
NR_UE_IP=172.22.0.24

UE1_IMEI=356938035643803
UE1_IMEISV=4370816125816151
UE1_IMSI=001011234567895
UE1_KI=8baf473f2f8fd09487cccbd7097c6862
UE1_OP=11111111111111111111111111111111
UE1_AMF=8000

# OAI ENB
OAI_ENB_IP=172.22.0.25

# OPEN5GS WEBUI
WEBUI_IP=172.22.0.26

# PCF
PCF_IP=172.22.0.27

# NSSF
NSSF_IP=172.22.0.28

# BSF
BSF_IP=172.22.0.29

# ENTITLEMENT SERVER
ENTITLEMENT_SERVER_IP=172.22.0.30

# OSMOMSC
OSMOMSC_IP=172.22.0.31

# OSMOHLR
OSMOHLR_IP=172.22.0.32

# SMSC
SMSC_IP=172.22.0.33

# SRSLTE UE
SRS_UE_IP=172.22.0.34

# SCP
SCP_IP=172.22.0.35

# METRICS
METRICS_IP=172.22.0.36

# SRSRAN GNB
SRS_GNB_IP=172.22.0.37

# GRAFANA
GRAFANA_IP=172.22.0.39
GRAFANA_USERNAME=open5gs
GRAFANA_PASSWORD=open5gs

# UE IPv4 Subnet Range for APN=internet
UE_IPV4_INTERNET=192.168.100.0/24

# UE IPv4 Subnet Range for APN=ims
UE_IPV4_IMS=192.168.101.0/24

# Maximum Number of UEs
MAX_NUM_UE=1024
27 changes: 27 additions & 0 deletions custom_deployments/with_eupf/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
## Deployment description

This custom deployment uses eUPF (https://github.com/edgecomllc/eupf) rather than open5gs UPF for 5G SA network deployment

## Additional steps

Most of the steps to be followed are similar to the steps mentioned in the [README in the root folder](../../README.md). However, additional steps mentioned below must be taken into account while deploying this custom deployment scenario.

### Build docker images for eUPF

eUPF docker image needs to be built before deploying

```
cd ../../eupf
docker build --no-cache --force-rm -t docker_eupf .
```

### Loading environmental variables for custom deployment

**Warning**
For custom deployments, you must modify/use only the [**.custom_env**](.custom_env) file rather than the [**.env** in the root folder](../../.env).

```
set -a
source .custom_env
set +a
```
Loading

0 comments on commit 97a0ae4

Please sign in to comment.