当前位置: 首页 > news >正文

使用ubuntu:20.04和ubuntu:jammy构建secretflow环境

一、使用ubuntu:20.04构建隐语编译环境

FROM ubuntu:20.04LABEL maintainer="build SecureProtocolLib on ubuntu:20.04"ARG TARGETPLATFORM# change dash to bash as default shell
RUN ln -sf /bin/bash /bin/shRUN apt update \&& apt upgrade -y \&& apt install -y software-properties-common \&& add-apt-repository -y ppa:ubuntu-toolchain-r/test \&& apt upgrade -y \&& apt install -y gcc-11 g++-11 libasan6 \git wget curl unzip autoconf build-essential libssl-dev lld\ninja-build vim-common libgl1 libglib2.0-0 \&& DEBIAN_FRONTEND=noninteractive apt install -y tzdata \&& apt clean \&& update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 100 \&& update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100 # install cmake
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then CONDA_ARCH=aarch64 ; else CONDA_ARCH=x86_64 ; fi \&& curl -sL https://github.com/Kitware/CMake/releases/download/v3.26.1/cmake-3.26.1-linux-$CONDA_ARCH.sh -o cmakeinstall.sh \&& chmod +x cmakeinstall.sh \&& ./cmakeinstall.sh --prefix=/usr/local/bin/ --exclude-subdir \&& rm cmakeinstall.sh \&& ln -s /usr/local/bin/cmake  /usr/bin/cmake# clang is required on arm64 platform
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then \echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main" > /etc/apt/sources.list.d/llvm.list \&& echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main" >> /etc/apt/sources.list.d/llvm.list \&& wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - \&& apt update \&& apt install -y clang-15 \&& apt clean \&& update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 \&& update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 \
; fi# amd64 is only reqiured on amd64 platform
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ] ; then apt install -y nasm ; fi# install conda
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then CONDA_ARCH=aarch64 ; else CONDA_ARCH=x86_64 ; fi \&& wget https://repo.anaconda.com/miniconda/Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh \&& bash Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh -b \&& rm -f Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh \&& /root/miniconda3/bin/conda init# Add conda to path
ENV PATH="/root/miniconda3/bin:${PATH}"# install bazel
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then BAZEL_ARCH=arm64 ; else BAZEL_ARCH=amd64 ; fi \&& wget https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-$BAZEL_ARCH \&& mv bazelisk-linux-$BAZEL_ARCH /usr/bin/bazelisk \&& chmod +x /usr/bin/bazelisk \&& ln -s /usr/bin/bazelisk /usr/bin/bazel# run as root for now
WORKDIR /home/admin/ENTRYPOINT [ "/bin/bash", "-lc" ]

二、使用ubuntu:jammy编译secretflow环境

FROM ubuntu:jammyLABEL maintainer="secretflow-contact@service.alipay.com"ARG TARGETPLATFORM# change dash to bash as default shell
RUN ln -sf /bin/bash /bin/shRUN apt update \&& apt upgrade -y \&& apt install -y gcc-11 g++-11 libasan6 \git wget curl unzip autoconf make lld-15 \cmake ninja-build vim-common libgl1 libglib2.0-0 \&& DEBIAN_FRONTEND=noninteractive apt install -y tzdata \&& apt clean \&& update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 100 \&& update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100 \&& update-alternatives --install /usr/bin/ld.lld ld.lld /usr/bin/ld.lld-15 100# clang is required on arm64 platform
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then apt install -y clang-15 \&& apt clean \&& update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 \&& update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 \
; fi# amd64 is only reqiured on amd64 platform
RUN if [ "$TARGETPLATFORM" = "linux/amd64" ] ; then apt install -y nasm ; fi# install conda
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then CONDA_ARCH=aarch64 ; else CONDA_ARCH=x86_64 ; fi \&& wget https://repo.anaconda.com/miniconda/Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh \&& bash Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh -b \&& rm -f Miniconda3-py38_23.11.0-2-Linux-$CONDA_ARCH.sh \&& /root/miniconda3/bin/conda init# Add conda to path
ENV PATH="/root/miniconda3/bin:${PATH}"# install bazel
RUN if [ "$TARGETPLATFORM" = "linux/arm64" ] ; then BAZEL_ARCH=arm64 ; else BAZEL_ARCH=amd64 ; fi \&& wget https://github.com/bazelbuild/bazelisk/releases/download/v1.25.0/bazelisk-linux-$BAZEL_ARCH \&& mv bazelisk-linux-$BAZEL_ARCH /usr/bin/bazelisk \&& chmod +x /usr/bin/bazelisk \&& ln -s /usr/bin/bazelisk /usr/bin/bazel# run as root for now
WORKDIR /home/admin/ENTRYPOINT [ "/bin/bash", "-lc" ]

http://www.lryc.cn/news/595909.html

相关文章:

  • android模拟器手机打开本地网页
  • Tailwind CSS快速上手 Tailwind CSS的安装、配置、使用
  • J2EE模式---拦截过滤器模式
  • Vite:下一代前端构建工具的革命
  • C语言---VSCODE的C语言环境搭建
  • RISC-V基金会Datacenter SIG月会圆满举办,探讨RAS、PMU性能分析实践和经验
  • vs2017 c++ 使用sqlite3数据库
  • 末日期权的双买和单买策略区别是什么?
  • 双向链表详解及实现
  • C++_Hello算法_队列
  • 基于Java+MySQL实现(Web)文件共享管理系统(仿照百度文库)
  • 188粉福
  • Spring快速整合Mybatis
  • 技术与情感交织的一生 (十)
  • nodejs:告别全局安装,npx 命令详解及其与 npm 的区别
  • 从零开始学CTF(第二十五期)
  • Gitlab-CI实现组件自动推送
  • n8n - 为技术团队提供安全的自动化工作流
  • 基于Kubernetes的微服务CI/CD:Jenkins Pipeline全流程实践
  • 知识库搭建之Meilisearch‘s 搜索引擎 测评-东方仙盟测评师
  • STL学习(一、string容器)
  • 暑假算法训练.6
  • 深入浅出Python函数:参数传递、作用域与案例详解
  • 根据数据,判断神经网络所需的最小参数量
  • 设计模式七:抽象工厂模式(Abstract Factory Pattern)
  • 【Linux内核模块】模块声明与描述
  • 【RK3576】【Android14】MIC开发调试
  • 杭州网站建设选哪家?派迪科技项目实力展示
  • Python 正则表达式在数据分析中的应用:实战指南
  • OpenCV基本的图像处理