OGS容器制造商

ogscm的Python项目详细描述


OGS容器制造商

一般用法

安装

virtualenv ~/.venv/ogs-container-maker
source ~/.venv/ogs-container-maker/bin/activate
pip install ogscm

生成容器定义

$ ogscm
Creating 1 image definition(s)...
Created definition _out/docker/ubuntu_17.10/ogs-4c7de6a4/serial/conan/cmake-d41d8cd9/Dockerfile 

# With user options
$ ogscm --format singularity --ompi 2.1.3 --cmake_args ' -DOGS_BUILD_PROCESSES=GroundwaterFlow'
Creating 1 image definition(s)...
Created definition _out/singularity/ubuntu_17.10/ogs-4c7de6a4/openmpi-2.1.3/conan/cmake-fde09bf7/Singularity.de

建立图像

添加--build标志。

将Docker图像转换为奇点图像:

添加--convert标志(需要singularity 3.x)。

运行

docker run --it --rm ogs-ompi-2.1.3
# in container:
ogs --version
singularity shell ogs-ompi-2.1.3.sif
# in container:
ogs --version
# OR directly run from host
singularity exec ogs-ompi-2.1.3.sif ogs local/path/to/square_1e0.prj

使用组合生成器

使用不同的openmpi实现和opengeosys并行配置创建docker定义文件(从当前主文件),构建docker图像并将其转换为奇点图像:

python build.py --ogs ufz/ogs@master --ompi 2.1.2 3.1.2 --build --convert

有关更多选项,请查看帮助:

$ ogscm --help
usage: ogscm [-h][--recipe RECIPE][--out OUT][--file FILE][--print][--format [{docker,singularity}[{docker,singularity} ...]]][--pm [{system,conan}[{system,conan} ...]]][--ompi [OMPI [OMPI ...]]][--ogs [OGS [OGS ...]]][--cmake_args [CMAKE_ARGS [CMAKE_ARGS ...]]][--build][--upload][--registry REGISTRY][--convert][--runtime-only][--base_image BASE_IMAGE][--clang][--gui][--docs][--jenkins][--cvode][--cppcheck][--iwyy][--gcovr][--dev][--compiler_version COMPILER_VERSION]

Generate container image definitions.

optional arguments:
  -h, --help            show this help message and exit
  --recipe RECIPE       HPCCM recipe (default: recipes/ogs-builder.py)
  --out OUT             Output directory (default: _out)
  --file FILE           Overwrite output recipe file name (default: )
  --print, -P           Print the definition to stdout (default: False)

Combinatorial options:
  All combinations of the given options will be generated

  --format [{docker,singularity}[{docker,singularity} ...]]
  --pm [{system,conan}[{system,conan} ...]]
                        Package manager to install third-party dependencies
                        (default: ['conan'])
  --ompi [OMPI [OMPI ...]]
                        OpenMPI version, e.g. 2.1.1, 2.1.5, 3.0.1, 3.1.2
                        (default: ['off'])
  --ogs [OGS [OGS ...]]
                        OGS GitHub repo in the form 'user/repo@branch' or
                        'off' to disable OGS building (default:
                        ['ufz/ogs@master'])
  --cmake_args [CMAKE_ARGS [CMAKE_ARGS ...]]
                        CMake argument sets have to be quoted and **must**
                        start with a space. e.g. --cmake_args ' -DFIRST=TRUE                        -DFOO=BAR'' -DSECOND=TRUE'(default: [''])

Image build options:
  --build, -B           Build the images from the definition files (default:
                        False)
  --upload, -U          Upload Docker image to registry (default: False)
  --registry REGISTRY   The docker registry the image is tagged and uploaded
                        to. (default: registry.opengeosys.org/ogs/ogs)
  --convert, -C         Convert Docker image to Singularity image (default:
                        False)
  --runtime-only, -R    Generate multi-stage Dockerfiles for small runtime
                        images (default: False)

Additional options:
  --base_image BASE_IMAGE
                        The base image. 'centos:7' is supported too. (default:
                        ubuntu:17.10)
  --clang               Use clang instead of gcc (default: False)
  --gui                 Builds the GUI (Data Explorer)(default: False)
  --docs                Setup documentation requirements (Doxygen)(default:
                        False)
  --jenkins             Setup Jenkins slave (default: False)
  --cvode               Install and configure with cvode (default: False)
  --cppcheck            Install cppcheck (default: False)
  --iwyy                Install include-what-you-use (default: False)
  --gcovr               Install gcovr (default: False)
  --dev                 Installs development tools (vim, gdb)(default: False)
  --compiler_version COMPILER_VERSION
                        Compiler version. (default: )

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在表被注释到配置之前获取表的元数据?   java滚动条不会出现在JList上   java JOGL监视器GPU内存   java为什么要使用RecyclerView onDraw延迟   java定制Oppo Reno 2 Z CPH1951(手机型号)的固件(闪存文件)   java自定义线程池执行器   java如何解决发布版本中重复的jar条目[com/安卓/volley/R.class]?   java如何使用Bukkit API触发事件?   java在blazemeter jmeter RTE插件中使用ctrl+w输入   C#/Visual Studio的java JDT等价物   java为什么当maxread值很大而收到的消息数量很小时,卡夫卡消费者会无限期消费?   java游戏2。x:包含模板列表的绑定模型   带压缩的java日志旋转   运行时。exec用java运行程序读取它正在做什么