tDockerfile.in - pism - [fork] customized build of PISM, the parallel ice sheet model (tillflux branch)
HTML 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