tDockerfile.in - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch) (HTM) git clone git://src.adamsgaard.dk/pism (DIR) Log (DIR) Files (DIR) Refs (DIR) LICENSE --- tDockerfile.in (1297B) --- 1 FROM ubuntu:20.04 2 ENV DEBIAN_FRONTEND=noninteractive 3 RUN apt-get update && apt-get install -y \ 4 ccache \ 5 clang \ 6 python3-sphinx \ 7 python3-sphinxcontrib.bibtex \ 8 wget \ 9 ${PISM_DEBIAN_PACKAGE_LIST} 10 11 RUN useradd --create-home --system --shell=/bin/false builder && usermod --lock builder 12 USER builder 13 14 # Install parallel HDF5, NetCDF, PnetCDF, and ParallelIO by building them from sources. 15 # 16 # Uses wget installed above. 17 # 18 # This step uses scripts that are used to describe how to install these libraries in the 19 # manual. Re-using them here makes it easier to keep this part of the manual up to date. 20 21 COPY hdf5.sh /tmp/ 22 COPY netcdf.sh /tmp/ 23 COPY pnetcdf.sh /tmp/ 24 COPY parallelio.sh /tmp/ 25 26 RUN cd /tmp &&\ 27 ./hdf5.sh && \ 28 ./netcdf.sh && \ 29 ./pnetcdf.sh && \ 30 ./parallelio.sh && \ 31 rm -rf ~/local/build 32 33 # Add a flag needed to use OpenMPI in a Docker container. 34 # See https://github.com/open-mpi/ompi/issues/4948 35 # Tested on Ubuntu 20.04 (LTS) 36 # 37 # Allow oversubscribing (i.e. running more MPI processes than the number of cores 38 # available). Run "ompi_info --all" to get the list of MCA parameters. 39 ENV OMPI_MCA_btl="^vader" \ 40 OMPI_MCA_rmaps_base_oversubscribe=yes \ 41 OMPI_MCA_btl_base_warn_component_unused=0