【Sionna】docker build ubuntu cuda

改动之后

bash 复制代码
#/*
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
# * contributor license agreements.  See the NOTICE file distributed with
# * this work for additional information regarding copyright ownership.
# * The OpenAirInterface Software Alliance licenses this file to You under
# * the OAI Public License, Version 1.1  (the "License"); you may not use this file
# * except in compliance with the License.
# * You may obtain a copy of the License at
# *
# *      http://www.openairinterface.org/?page_id=698
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# *-------------------------------------------------------------------------------
# * For more information about the OpenAirInterface (OAI) Software Alliance:
# *      contact@openairinterface.org
# */
#---------------------------------------------------------------------
#
# Dockerfile for the Open-Air-Interface BUILD service
#   Valid for Ubuntu 24.04
#
#---------------------------------------------------------------------

ARG DOCKER_CUSTOM_IMAGE_TAG=latest
FROM ran-base-cuda:${DOCKER_CUSTOM_IMAGE_TAG} AS ran-build-cuda
ARG BUILD_OPTION
ARG FLEXRIC_BUILD_OPTIONS
ARG NVIDIA_DRIVER_CAPABILITIES=all
ARG E2AP_VERSION=E2AP_V3
ARG KPM_VERSION=KPM_V3_00

# TensorRT 11 plan builds use ModelOpt to convert ONNX models to FP16.
# Isolate pip dependencies from apt-managed Python packages (e.g. NumPy).
RUN apt-get update && \
    apt-get install --yes --no-install-recommends python3-venv && \
    rm -rf /var/lib/apt/lists/* && \
    python3 -m venv /opt/modelopt-venv && \
    /opt/modelopt-venv/bin/python3 -m pip install --no-cache-dir 'nvidia-modelopt[onnx]' && \
    /opt/modelopt-venv/bin/python3 -c "import modelopt.onnx.autocast"

RUN rm -Rf /oai-ran
WORKDIR /oai-ran

# Copy OAI and plugins from sionna-rk context
COPY ext/openairinterface5g/ .
COPY plugins/ plugins/

# build all targets so final targets can be created afterwards
RUN \
   # Mount CCache cache direrctory
   --mount=type=cache,target=/root/.cache/ccache/ \
   # Mount CPM package cache
   --mount=type=cache,target=/root/.cache/cpm/ \
    /bin/sh oaienv && \
    cd cmake_targets && \
    mkdir -p log && \
    ./build_oai -c --ninja \
      --eNB --gNB --RU --UE --nrUE \
      --build-lib "telnetsrv enbscope uescope nrscope" \
      -w USRP -t Ethernet \
      --build-e2 --cmake-opt -DKPM_VERSION=$KPM_VERSION --cmake-opt -DE2AP_VERSION=$E2AP_VERSION \
      --noavx512 \
      --build-tool-opt -k10 \
      --cmake-opt -DCMAKE_C_FLAGS="-Werror" --cmake-opt -DCMAKE_CXX_FLAGS="-Werror" $BUILD_OPTION && \
    # Mainly to see if the sanitize option was perfectly executed
    echo "---- ldd on executables ----" && \
    ldd ran_build/build/*softmodem* ran_build/build/nr-cuup ran_build/build/oairu && \
    echo "---- ldd on shared libraries ----" && \
    ldd ran_build/build/*.so

## Build FlexRIC for SM Models
RUN \
    # Mount CCache cache direrctory
    --mount=type=cache,target=/root/.cache/ccache/ \
    mkdir -p openair2/E2AP/flexric/build && \
    cd openair2/E2AP/flexric/build && \
    cmake -GNinja -DCMAKE_BUILD_TYPE=Release \
          -DKPM_VERSION=$KPM_VERSION \
          -DE2AP_VERSION=$E2AP_VERSION $FLEXRIC_BUILD_OPTIONS .. && \
    ninja && \
    ninja install

# Use the ModelOpt environment for plugin plan builds launched via docker run.
# Set PATH after compilation so OAI builds keep using the system Python.
ENV PATH="/opt/modelopt-venv/bin:${PATH}"
相关推荐
瑞克-桑切斯1 小时前
docker mail商城
运维·docker·容器
java_logo1 小时前
Docker 部署 ReMe:轻松搭建 AI Agent 记忆管理平台
人工智能·docker·容器·ai agent·轩辕镜像·reme·agentscope-ai
不庸.2 小时前
WPScan 实战入门:从 Docker 靶场到弱密码爆破
运维·安全·web安全·docker·容器·安全性测试·wpscan
xbzb3 小时前
Docker 架构与部署:一条 docker run 到底走了三层
docker·容器·架构·镜像·加速·daemon
java_logo14 小时前
Docker 部署 Dify:轻松搭建 LLM 应用开发平台
运维·docker·容器
方便面不加香菜15 小时前
Docker Container -- 综合实战案例详解
运维·docker·容器
qq_3718021120 小时前
Ubuntu Linux中安装WorkBuddy
linux·运维·服务器·ubuntu
修己xj20 小时前
在 AMD 机器上拉取 ARM 架构 Docker 镜像
docker
瑞克-桑切斯1 天前
docker Harbor 单机部署手册
大数据·运维·elasticsearch·docker·容器
wzq11_6661 天前
Kubernetes集群——存储管理
云原生·容器·kubernetes