Enable gNB configuration through YAML file
This commit is contained in:
@@ -0,0 +1,208 @@
|
|||||||
|
Active_gNBs:
|
||||||
|
- gnb-rfsim
|
||||||
|
# Asn1_verbosity, choice in: none, info, annoying
|
||||||
|
Asn1_verbosity: none
|
||||||
|
gNBs:
|
||||||
|
##### Identification parameters:
|
||||||
|
- gNB_ID: 0xe00
|
||||||
|
gNB_name: gnb-rfsim
|
||||||
|
tracking_area_code: 1
|
||||||
|
plmn_list:
|
||||||
|
- mcc: 208
|
||||||
|
mnc: 99
|
||||||
|
mnc_length: 2
|
||||||
|
snssaiList:
|
||||||
|
- sst: 1
|
||||||
|
sd: 0xffffff
|
||||||
|
nr_cellid: 12345678
|
||||||
|
##### Physical parameters:
|
||||||
|
min_rxtxtime: 6
|
||||||
|
servingCellConfigCommon:
|
||||||
|
#spCellConfigCommon
|
||||||
|
- physCellId: 0
|
||||||
|
# downlinkConfigCommon
|
||||||
|
#frequencyInfoDL
|
||||||
|
# this is 3300.60 MHz + 53*12*30e-3 MHz = 3319.68
|
||||||
|
absoluteFrequencySSB: 621312
|
||||||
|
# this is 3300.60 MHz
|
||||||
|
dl_absoluteFrequencyPointA: 620040
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
dl_offstToCarrier: 0
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
dl_subcarrierSpacing: 1
|
||||||
|
dl_carrierBandwidth: 106
|
||||||
|
#initialDownlinkBWP
|
||||||
|
#genericParameters
|
||||||
|
# this is RBstart=0,L=106 (275*(L-1))+RBstart
|
||||||
|
initialDLBWPlocationAndBandwidth: 28875
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialDLBWPsubcarrierSpacing: 1
|
||||||
|
#pdcch-ConfigCommon
|
||||||
|
initialDLBWPcontrolResourceSetZero: 11
|
||||||
|
initialDLBWPsearchSpaceZero: 0
|
||||||
|
#uplinkConfigCommon
|
||||||
|
#frequencyInfoUL
|
||||||
|
ul_frequencyBand: 78
|
||||||
|
#scs-SpecificCarrierList
|
||||||
|
ul_offstToCarrier: 0
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
ul_subcarrierSpacing: 1
|
||||||
|
ul_carrierBandwidth: 106
|
||||||
|
pMax: 20
|
||||||
|
#initialUplinkBWP
|
||||||
|
#genericParameters
|
||||||
|
initialULBWPlocationAndBandwidth: 28875
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
initialULBWPsubcarrierSpacing: 1
|
||||||
|
#rach-ConfigCommon
|
||||||
|
#rach-ConfigGeneric
|
||||||
|
prach_ConfigurationIndex: 98
|
||||||
|
#prach_msg1_FDM
|
||||||
|
#0 = one, 1=two, 2=four, 3=eight
|
||||||
|
prach_msg1_FDM: 0
|
||||||
|
prach_msg1_FrequencyStart: 0
|
||||||
|
zeroCorrelationZoneConfig: 12
|
||||||
|
preambleReceivedTargetPower: -104
|
||||||
|
#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
|
||||||
|
preambleTransMax: 6
|
||||||
|
#powerRampingStep
|
||||||
|
# 0=dB0,1=dB2,2=dB4,3=dB6
|
||||||
|
powerRampingStep: 1
|
||||||
|
#ra_ReponseWindow
|
||||||
|
#1,2,4,8,10,20,40,80
|
||||||
|
ra_ResponseWindow: 5
|
||||||
|
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
|
||||||
|
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR: 3
|
||||||
|
#oneHalf (0..15) 4,8,12,16,...60,64
|
||||||
|
ssb_perRACH_OccasionAndCB_PreamblesPerSSB: 15
|
||||||
|
#ra_ContentionResolutionTimer
|
||||||
|
#(0..7) 8,16,24,32,40,48,56,64
|
||||||
|
ra_ContentionResolutionTimer: 7
|
||||||
|
rsrp_ThresholdSSB: 19
|
||||||
|
#prach-RootSequenceIndex_PR
|
||||||
|
#1 = 839, 2 = 139
|
||||||
|
prach_RootSequenceIndex_PR: 2
|
||||||
|
prach_RootSequenceIndex: 1
|
||||||
|
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
|
||||||
|
msg1_SubcarrierSpacing: 1
|
||||||
|
# restrictedSetConfig
|
||||||
|
# 0=unrestricted, 1=restricted type A, 2=restricted type B
|
||||||
|
restrictedSetConfig: 0
|
||||||
|
msg3_DeltaPreamble: 1
|
||||||
|
p0_NominalWithGrant: -90
|
||||||
|
|
||||||
|
# pucch-ConfigCommon setup :
|
||||||
|
# pucchGroupHopping
|
||||||
|
# 0 = neither, 1= group hopping, 2=sequence hopping
|
||||||
|
pucchGroupHopping: 0
|
||||||
|
hoppingId: 40
|
||||||
|
p0_nominal: -90
|
||||||
|
ssb_PositionsInBurst_Bitmap: 1
|
||||||
|
# ssb_periodicityServingCell
|
||||||
|
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
|
||||||
|
ssb_periodicityServingCell: 2
|
||||||
|
|
||||||
|
# dmrs_TypeA_position
|
||||||
|
# 0 = pos2, 1 = pos3
|
||||||
|
dmrs_TypeA_Position: 0
|
||||||
|
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
subcarrierSpacing: 1
|
||||||
|
|
||||||
|
#tdd-UL-DL-ConfigurationCommon
|
||||||
|
# subcarrierSpacing
|
||||||
|
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
|
||||||
|
referenceSubcarrierSpacing: 1
|
||||||
|
|
||||||
|
# pattern1
|
||||||
|
# dl_UL_TransmissionPeriodicity
|
||||||
|
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
|
||||||
|
dl_UL_TransmissionPeriodicity: 6
|
||||||
|
nrofDownlinkSlots: 7
|
||||||
|
nrofDownlinkSymbols: 6
|
||||||
|
nrofUplinkSlots: 2
|
||||||
|
nrofUplinkSymbols: 4
|
||||||
|
ssPBCH_BlockPower: -25
|
||||||
|
SCTP:
|
||||||
|
SCTP_INSTREAMS: 2
|
||||||
|
SCTP_OUTSTREAMS: 2
|
||||||
|
|
||||||
|
##### AMF parameters:
|
||||||
|
amf_ip_address:
|
||||||
|
- ipv4: 192.168.71.132
|
||||||
|
|
||||||
|
NETWORK_INTERFACES:
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NG_AMF: 192.168.71.140
|
||||||
|
GNB_IPV4_ADDRESS_FOR_NGU: 192.168.71.140
|
||||||
|
GNB_PORT_FOR_S1U: 2152 # Spec 2152
|
||||||
|
|
||||||
|
|
||||||
|
MACRLCs:
|
||||||
|
- num_cc: 1
|
||||||
|
tr_s_preference: local_L1
|
||||||
|
tr_n_preference: local_RRC
|
||||||
|
pusch_TargetSNRx10: 200
|
||||||
|
pucch_TargetSNRx10: 200
|
||||||
|
|
||||||
|
L1s:
|
||||||
|
- num_cc: 1
|
||||||
|
tr_n_preference: local_mac
|
||||||
|
prach_dtx_threshold: 200
|
||||||
|
# pucch0_dtx_threshold = 150;
|
||||||
|
|
||||||
|
RUs:
|
||||||
|
- local_rf: yes
|
||||||
|
nb_tx: 1
|
||||||
|
nb_rx: 1
|
||||||
|
att_tx: 0
|
||||||
|
att_rx: 0
|
||||||
|
bands: [78]
|
||||||
|
max_pdschReferenceSignalPower: -27
|
||||||
|
max_rxgain: 75
|
||||||
|
eNB_instances: [0]
|
||||||
|
##beamforming 1x2 matrix: 1 layer x 2 antennas
|
||||||
|
bf_weights: [0x00007fff, 0x0000]
|
||||||
|
##beamforming 1x4 matrix: 1 layer x 4 antennas
|
||||||
|
#bf_weights = [0x00007fff, 0x0000,0x0000, 0x0000];
|
||||||
|
## beamforming 2x2 matrix:
|
||||||
|
# bf_weights = [0x00007fff, 0x00000000, 0x00000000, 0x00007fff];
|
||||||
|
## beamforming 4x4 matrix:
|
||||||
|
#bf_weights = [0x00007fff, 0x0000, 0x0000, 0x0000, 0x00000000, 0x00007fff, 0x0000, 0x0000, 0x0000, 0x0000, 0x00007fff, 0x0000, 0x0000, 0x0000, 0x0000, 0x00007fff];
|
||||||
|
sf_extension: 0
|
||||||
|
sdr_addrs: serial=XXXXXXX
|
||||||
|
|
||||||
|
rfsimulator:
|
||||||
|
serveraddr: server
|
||||||
|
|
||||||
|
security:
|
||||||
|
# preferred ciphering algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nea0, nea1, nea2, nea3
|
||||||
|
ciphering_algorithms: [nea0]
|
||||||
|
|
||||||
|
# preferred integrity algorithms
|
||||||
|
# the first one of the list that an UE supports in chosen
|
||||||
|
# valid values: nia0, nia1, nia2, nia3
|
||||||
|
integrity_algorithms: [nia2, nia0]
|
||||||
|
|
||||||
|
# setting 'drb_ciphering' to "no" disables ciphering for DRBs, no matter
|
||||||
|
# what 'ciphering_algorithms' configures; same thing for 'drb_integrity'
|
||||||
|
drb_ciphering: yes
|
||||||
|
drb_integrity: no
|
||||||
|
|
||||||
|
log_config:
|
||||||
|
global_log_level: info
|
||||||
|
hw_log_level: info
|
||||||
|
phy_log_level: info
|
||||||
|
mac_log_level: info
|
||||||
|
rlc_log_level: info
|
||||||
|
pdcp_log_level: info
|
||||||
|
rrc_log_level: info
|
||||||
|
ngap_log_level: debug
|
||||||
|
f1ap_log_level: debug
|
||||||
@@ -94,7 +94,7 @@ services:
|
|||||||
public_net:
|
public_net:
|
||||||
ipv4_address: 192.168.71.140
|
ipv4_address: 192.168.71.140
|
||||||
volumes:
|
volumes:
|
||||||
- ../../conf_files/gnb.sa.band78.106prb.rfsim.conf:/opt/oai-gnb/etc/gnb.conf
|
- ../../conf_files/gnb.sa.band78.106prb.rfsim.yaml:/opt/oai-gnb/etc/gnb.yaml
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: /bin/bash -c "pgrep nr-softmodem"
|
test: /bin/bash -c "pgrep nr-softmodem"
|
||||||
interval: 10s
|
interval: 10s
|
||||||
|
|||||||
@@ -78,7 +78,8 @@ RUN apt-get update && \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
gdb \
|
gdb \
|
||||||
moreutils \
|
moreutils \
|
||||||
libusb-1.0-0 && \
|
libusb-1.0-0 \
|
||||||
|
libyaml-cpp-dev && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
WORKDIR /opt/oai-gnb/bin
|
WORKDIR /opt/oai-gnb/bin
|
||||||
@@ -86,7 +87,10 @@ COPY --from=ran-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/nr-softmodem ./
|
/oai-ran/cmake_targets/ran_build/build/nr-softmodem ./
|
||||||
COPY ./docker/scripts/gnb_entrypoint.sh ./entrypoint.sh
|
COPY ./docker/scripts/gnb_entrypoint.sh ./entrypoint.sh
|
||||||
|
|
||||||
COPY --from=ran-build /oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so /usr/local/lib/
|
COPY --from=ran-build \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
|
/usr/local/lib/
|
||||||
|
|
||||||
#copy files from nvIPC
|
#copy files from nvIPC
|
||||||
COPY --from=ran-build \
|
COPY --from=ran-build \
|
||||||
@@ -107,4 +111,4 @@ RUN ldconfig && \
|
|||||||
WORKDIR /opt/oai-gnb
|
WORKDIR /opt/oai-gnb
|
||||||
COPY --from=ran-build /tini /tini
|
COPY --from=ran-build /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -78,7 +78,8 @@ RUN apt-get update && \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
gdb \
|
gdb \
|
||||||
moreutils \
|
moreutils \
|
||||||
libusb-1.0-0 && \
|
libusb-1.0-0 \
|
||||||
|
libyaml-cpp-dev && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
WORKDIR /opt/oai-gnb/bin
|
WORKDIR /opt/oai-gnb/bin
|
||||||
@@ -92,6 +93,7 @@ COPY --from=ran-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \
|
/oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
#copy files from nvIPC
|
#copy files from nvIPC
|
||||||
@@ -113,4 +115,4 @@ RUN ldconfig && \
|
|||||||
WORKDIR /opt/oai-gnb
|
WORKDIR /opt/oai-gnb
|
||||||
COPY --from=ran-build /tini /tini
|
COPY --from=ran-build /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -41,6 +41,9 @@ RUN /bin/sh oaienv && \
|
|||||||
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb-aw2s
|
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb-aw2s
|
||||||
ENV TZ=Europe/Paris
|
ENV TZ=Europe/Paris
|
||||||
|
|
||||||
|
# Install EPEL for RHEL9
|
||||||
|
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
|
||||||
|
|
||||||
RUN dnf update -y && \
|
RUN dnf update -y && \
|
||||||
dnf install -y \
|
dnf install -y \
|
||||||
procps-ng \
|
procps-ng \
|
||||||
@@ -50,7 +53,8 @@ RUN dnf update -y && \
|
|||||||
lksctp-tools \
|
lksctp-tools \
|
||||||
tzdata \
|
tzdata \
|
||||||
net-tools \
|
net-tools \
|
||||||
iputils && \
|
iputils \
|
||||||
|
yaml-cpp-devel && \
|
||||||
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
||||||
echo "/usr/local/lib64" >> /etc/ld.so.conf.d/local-lib.conf
|
echo "/usr/local/lib64" >> /etc/ld.so.conf.d/local-lib.conf
|
||||||
|
|
||||||
@@ -69,6 +73,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
COPY --from=gnb-base \
|
COPY --from=gnb-base \
|
||||||
@@ -98,4 +103,4 @@ WORKDIR /opt/oai-gnb-aw2s
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem", "-O", "/opt/oai-gnb-aw2s/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
COPY --from=gnb-base \
|
COPY --from=gnb-base \
|
||||||
@@ -96,4 +97,4 @@ WORKDIR /opt/oai-gnb-aw2s
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem", "-O", "/opt/oai-gnb-aw2s/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -55,7 +55,8 @@ RUN apt-get update && \
|
|||||||
openssl \
|
openssl \
|
||||||
net-tools \
|
net-tools \
|
||||||
iproute2 \
|
iproute2 \
|
||||||
iputils-ping && \
|
iputils-ping \
|
||||||
|
libyaml-cpp-dev && \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
COPY ./libori.so /usr/local/lib/
|
COPY ./libori.so /usr/local/lib/
|
||||||
@@ -73,6 +74,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
|
|
||||||
@@ -95,4 +97,4 @@ WORKDIR /opt/oai-gnb-aw2s
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb-aw2s/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem", "-O", "/opt/oai-gnb-aw2s/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb-aw2s/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ FROM ran-build-fhi72:latest AS gnb-build
|
|||||||
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb-fhi72
|
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb-fhi72
|
||||||
ENV TZ=Europe/Paris
|
ENV TZ=Europe/Paris
|
||||||
|
|
||||||
|
# Install EPEL for RHEL9
|
||||||
|
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
|
||||||
|
|
||||||
# Copy the entitlements
|
# Copy the entitlements
|
||||||
COPY ./etc-pki-entitlement /etc/pki/entitlement
|
COPY ./etc-pki-entitlement /etc/pki/entitlement
|
||||||
|
|
||||||
@@ -55,7 +58,8 @@ RUN rm -f /etc/rhsm-host && \
|
|||||||
python3 \
|
python3 \
|
||||||
python3-pip \
|
python3-pip \
|
||||||
net-tools \
|
net-tools \
|
||||||
iputils && \
|
iputils \
|
||||||
|
yaml-cpp-devel && \
|
||||||
pip3 install six && \
|
pip3 install six && \
|
||||||
pip3 install requests && \
|
pip3 install requests && \
|
||||||
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
||||||
@@ -78,6 +82,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
## Libxran library
|
## Libxran library
|
||||||
@@ -122,4 +127,4 @@ RUN ldconfig && \
|
|||||||
WORKDIR /opt/oai-gnb
|
WORKDIR /opt/oai-gnb
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
## Libxran library
|
## Libxran library
|
||||||
@@ -114,4 +115,4 @@ RUN ldconfig && \
|
|||||||
WORKDIR /opt/oai-gnb
|
WORKDIR /opt/oai-gnb
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -58,7 +58,8 @@ RUN apt-get update && \
|
|||||||
libnuma-dev \
|
libnuma-dev \
|
||||||
python3 \
|
python3 \
|
||||||
python3-six \
|
python3-six \
|
||||||
python3-requests &&\
|
python3-requests \
|
||||||
|
libyaml-cpp-dev && \
|
||||||
# if the --sanitize option was used to build, additional packages are required
|
# if the --sanitize option was used to build, additional packages are required
|
||||||
/bin/bash -c 'if [[ "$BUILD_OPTION" = "--sanitize" ]]; then DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
/bin/bash -c 'if [[ "$BUILD_OPTION" = "--sanitize" ]]; then DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
||||||
libasan5 \
|
libasan5 \
|
||||||
@@ -80,6 +81,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
## Libxran library
|
## Libxran library
|
||||||
@@ -110,4 +112,4 @@ RUN ldconfig && \
|
|||||||
WORKDIR /opt/oai-gnb
|
WORKDIR /opt/oai-gnb
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -34,6 +34,9 @@ FROM ran-build:latest AS gnb-build
|
|||||||
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb
|
FROM registry.access.redhat.com/ubi9/ubi:latest AS oai-gnb
|
||||||
ENV TZ=Europe/Paris
|
ENV TZ=Europe/Paris
|
||||||
|
|
||||||
|
# Install EPEL for RHEL9
|
||||||
|
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
|
||||||
|
|
||||||
RUN dnf update -y && \
|
RUN dnf update -y && \
|
||||||
dnf install -y \
|
dnf install -y \
|
||||||
procps-ng \
|
procps-ng \
|
||||||
@@ -46,7 +49,8 @@ RUN dnf update -y && \
|
|||||||
python3 \
|
python3 \
|
||||||
python3-pip \
|
python3-pip \
|
||||||
net-tools \
|
net-tools \
|
||||||
iputils && \
|
iputils \
|
||||||
|
yaml-cpp-devel && \
|
||||||
pip3 install six && \
|
pip3 install six && \
|
||||||
pip3 install requests && \
|
pip3 install requests && \
|
||||||
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
||||||
@@ -67,6 +71,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
COPY --from=gnb-base \
|
COPY --from=gnb-base \
|
||||||
@@ -125,4 +130,4 @@ WORKDIR /opt/oai-gnb
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
COPY --from=gnb-base \
|
COPY --from=gnb-base \
|
||||||
@@ -123,4 +124,4 @@ WORKDIR /opt/oai-gnb
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -63,7 +63,8 @@ RUN apt-get update && \
|
|||||||
python3 \
|
python3 \
|
||||||
python3-six \
|
python3-six \
|
||||||
python3-requests \
|
python3-requests \
|
||||||
libusb-1.0-0 && \
|
libusb-1.0-0 \
|
||||||
|
libyaml-cpp-dev && \
|
||||||
# if the --sanitize option was used to build, additional packages are required
|
# if the --sanitize option was used to build, additional packages are required
|
||||||
/bin/bash -c 'if [[ "$BUILD_OPTION" = "--sanitize" ]]; then DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
/bin/bash -c 'if [[ "$BUILD_OPTION" = "--sanitize" ]]; then DEBIAN_FRONTEND=noninteractive apt-get install --yes \
|
||||||
#libasan5 \ # see below
|
#libasan5 \ # see below
|
||||||
@@ -93,6 +94,7 @@ COPY --from=gnb-build \
|
|||||||
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
/oai-ran/cmake_targets/ran_build/build/libldpc*.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv.so \
|
||||||
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
/oai-ran/cmake_targets/ran_build/build/libtelnetsrv_ci.so \
|
||||||
|
/oai-ran/cmake_targets/ran_build/build/libparams_yaml.so \
|
||||||
/usr/local/lib/
|
/usr/local/lib/
|
||||||
|
|
||||||
# Now we are copying from builder-image the UHD files.
|
# Now we are copying from builder-image the UHD files.
|
||||||
@@ -128,4 +130,4 @@ WORKDIR /opt/oai-gnb
|
|||||||
|
|
||||||
COPY --from=gnb-base /tini /tini
|
COPY --from=gnb-base /tini /tini
|
||||||
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
ENTRYPOINT ["/tini", "-v", "--", "/opt/oai-gnb/bin/entrypoint.sh"]
|
||||||
CMD ["/opt/oai-gnb/bin/nr-softmodem", "-O", "/opt/oai-gnb/etc/gnb.conf"]
|
CMD ["/opt/oai-gnb/bin/nr-softmodem"]
|
||||||
|
|||||||
@@ -9,14 +9,29 @@ echo "=================================="
|
|||||||
echo "/proc/sys/kernel/core_pattern=$(cat /proc/sys/kernel/core_pattern)"
|
echo "/proc/sys/kernel/core_pattern=$(cat /proc/sys/kernel/core_pattern)"
|
||||||
|
|
||||||
if [ ! -f $CONFIGFILE ]; then
|
if [ ! -f $CONFIGFILE ]; then
|
||||||
echo "No configuration file found: please mount at $CONFIGFILE"
|
echo "No configuration file $CONFIGFILE found: attempting to find YAML config"
|
||||||
exit 255
|
YAML_CONFIGFILE=$PREFIX/etc/gnb.yaml
|
||||||
|
if [ ! -f $YAML_CONFIGFILE ]; then
|
||||||
|
echo "No configuration file $YAML_CONFIGFILE found. Please mount either at $CONFIGFILE or $YAML_CONFIGFILE"
|
||||||
|
exit 255
|
||||||
|
fi
|
||||||
|
CONFIGFILE=$YAML_CONFIGFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "=================================="
|
echo "=================================="
|
||||||
echo "== Configuration file:"
|
echo "== Configuration file:"
|
||||||
cat $CONFIGFILE
|
cat $CONFIGFILE
|
||||||
|
|
||||||
|
new_args=()
|
||||||
|
|
||||||
|
while [[ $# -gt 0 ]]; do
|
||||||
|
new_args+=("$1")
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
new_args+=("-O")
|
||||||
|
new_args+=("$CONFIGFILE")
|
||||||
|
|
||||||
# Load the USRP binaries
|
# Load the USRP binaries
|
||||||
echo "=================================="
|
echo "=================================="
|
||||||
echo "== Load USRP binaries"
|
echo "== Load USRP binaries"
|
||||||
@@ -35,7 +50,6 @@ echo "=================================="
|
|||||||
echo "== Starting gNB soft modem"
|
echo "== Starting gNB soft modem"
|
||||||
if [[ -v USE_ADDITIONAL_OPTIONS ]]; then
|
if [[ -v USE_ADDITIONAL_OPTIONS ]]; then
|
||||||
echo "Additional option(s): ${USE_ADDITIONAL_OPTIONS}"
|
echo "Additional option(s): ${USE_ADDITIONAL_OPTIONS}"
|
||||||
new_args=()
|
|
||||||
while [[ $# -gt 0 ]]; do
|
while [[ $# -gt 0 ]]; do
|
||||||
new_args+=("$1")
|
new_args+=("$1")
|
||||||
shift
|
shift
|
||||||
@@ -46,6 +60,6 @@ if [[ -v USE_ADDITIONAL_OPTIONS ]]; then
|
|||||||
echo "${new_args[@]}"
|
echo "${new_args[@]}"
|
||||||
exec "${new_args[@]}"
|
exec "${new_args[@]}"
|
||||||
else
|
else
|
||||||
echo "$@"
|
echo "${new_args[@]}"
|
||||||
exec "$@"
|
exec "${new_args[@]}"
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user