如果您想要参与iSulad的开发,可以参考以下指南。
我们在代码仓中提供了spec文件:iSulad.spec , 您可以直接执行以下命令编译安装isulad的基本依赖:
dnf builddep iSulad.spec
之后源码编译安装isulad:
$ git clone https://gitee.com/openeuler/iSulad.git
$ cd iSulad
$ mkdir build
$ cd build
$ sudo -E cmake ..
$ sudo -E make -j $(nproc)
$ sudo -E make install
注意: isula与isulad之间的通信默认使用grpc,若想要使用rest进行通信,可使用如下编译选项更换:
cmake -DENABLE_GRPC=OFF ../
我们在代码仓中提供了在Centos7上自动化安装的脚本: install_iSulad_on_Centos_7,您只需要执行这个脚本就可以自动编译安装iSulad以及其依赖的组件。
$ git clone https://gitee.com/openeuler/iSulad.git
$ cd iSulad/docs/build_docs/guide/script
$ sudo ./install_iSulad_on_Centos_7.sh
若需要在centos容器中编译iSulad,可参照iSulad编译可使用的镜像dockerfileDockerfile-ubuntu。
我们同样在代码仓中提供了在Ubuntu上自动化安装的脚本: install_iSulad_on_Ubuntu_20_04_LTS,您只需要执行这个脚本就可以自动编译安装iSulad以及其依赖的组件。
$ git clone https://gitee.com/openeuler/iSulad.git
$ cd iSulad/docs/build_docs/guide/script
$ sudo chmod +x ./install_iSulad_on_Ubuntu_20_04_LTS.sh
$ sudo ./install_iSulad_on_Ubuntu_20_04_LTS.sh
若需要在ubuntu容器中编译iSulad,可参照iSulad编译可使用的镜像dockerfileDockerfile-centos。
我们提供了多种构建iSulad的方式:
-
如果您想要通过rpm包构建iSulad,请参考build_guide_with_rpm。
-
如果您想要通过源码构建iSulad,请参考build_guide。
-
如果您想要在RISC-V架构的openEuler上构建iSulad,请参考build_guide_riscv。
-
如果您想要利用镜像快速构建iSulad,请参考build_guide_with_docker_image。
Fuzz 是一种自动化软件测试方法,它将无效、格式错误或意外的输入注入系统以揭示软件缺陷和漏洞。如果您想要通过Fuzz测试iSulad,请参考fuzz_test_guide。
Clang Static Analyer是一个源码分析工具,它可以发现C、C++和Objective-C程序中的bug。如果您想要通过Clang Static Analyer分析iSulad,请参考clang_analyzer_guide。
Include-what-you-use 是一个与 clang 一起使用的工具,用于分析 C 和 C++ 源文件中的头文件。如果您想要通过 include-what-you-use 分析iSulad,请参考include_what_you_use_guide。