Skip to content

Commit

Permalink
toolchain: Reduce number of layers in Dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
oschuett committed Mar 4, 2020
1 parent 552c70d commit f4680f8
Showing 1 changed file with 61 additions and 55 deletions.
116 changes: 61 additions & 55 deletions tools/toolchain/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
FROM ubuntu:18.04

ARG MPI_MODE=mpich
ARG LIBINT_LMAX=5
USER root

# author: Ole Schuett

# Installs complete toolchain including packages which are skipped by default.

USER root

# install Ubuntu packages.
COPY ./install_requirements.sh .
RUN ./install_requirements.sh
Expand All @@ -18,7 +20,8 @@ COPY ./scripts/VERSION \
./scripts/parse_if.py \
./scripts/tool_kit.sh \
./scripts/common_vars.sh \
./scripts/signal_trap.sh ./scripts/
./scripts/signal_trap.sh \
./scripts/

# Dry-run leaves behind config files for the followup install scripts.
# This breaks up the lengthy installation into smaller docker build steps.
Expand All @@ -29,32 +32,34 @@ RUN ./install_cp2k_toolchain.sh \
--libint-lmax=${LIBINT_LMAX} \
--dry-run

COPY ./scripts/install_gcc.sh ./scripts/
RUN ./scripts/install_gcc.sh && rm -rf ./build

COPY ./scripts/get_openblas_arch.sh \
COPY ./scripts/install_gcc.sh \
./scripts/get_openblas_arch.sh \
./scripts/setup_buildtools.sh \
./scripts/openblas-0.3.6-disable-avx512.patch \
./scripts/
RUN ./scripts/setup_buildtools.sh && rm -rf ./build
RUN ./scripts/install_gcc.sh && \
./scripts/setup_buildtools.sh && \
rm -rf ./build

COPY ./scripts/install_cmake.sh ./scripts/
RUN ./scripts/install_cmake.sh && rm -rf ./build

COPY ./scripts/install_valgrind.sh ./scripts/
RUN ./scripts/install_valgrind.sh && rm -rf ./build

COPY ./scripts/install_mpich.sh ./scripts/
RUN ./scripts/install_mpich.sh && rm -rf ./build

COPY ./scripts/install_openmpi.sh ./scripts/
RUN ./scripts/install_openmpi.sh && rm -rf ./build
COPY ./scripts/install_mpich.sh \
./scripts/install_openmpi.sh \
./scripts/
RUN ./scripts/install_openmpi.sh && \
./scripts/install_mpich.sh && \
rm -rf ./build

COPY ./scripts/install_reflapack.sh \
./scripts/install_mkl.sh \
./scripts/install_acml.sh \
./scripts/install_openblas.sh \
./scripts/install_mathlibs.sh ./scripts/
./scripts/install_mathlibs.sh \
./scripts/
RUN ./scripts/install_mathlibs.sh && rm -rf ./build

COPY ./scripts/install_fftw.sh ./scripts/
Expand All @@ -66,59 +71,60 @@ RUN ./scripts/install_libint.sh && rm -rf ./build
COPY ./scripts/install_libxc.sh ./scripts/
RUN ./scripts/install_libxc.sh && rm -rf ./build

COPY ./scripts/install_libsmm.sh ./scripts/
RUN ./scripts/install_libsmm.sh && rm -rf ./build

COPY ./scripts/install_libxsmm.sh ./scripts/
RUN ./scripts/install_libxsmm.sh && rm -rf ./build

COPY ./scripts/install_scalapack.sh ./scripts/
RUN ./scripts/install_scalapack.sh && rm -rf ./build
COPY ./scripts/install_libsmm.sh \
./scripts/install_libxsmm.sh \
./scripts/install_scalapack.sh \
./scripts/
RUN ./scripts/install_libsmm.sh && \
./scripts/install_libxsmm.sh && \
./scripts/install_scalapack.sh && \
rm -rf ./build

COPY ./scripts/install_elpa.sh ./scripts/
RUN ./scripts/install_elpa.sh && rm -rf ./build

COPY ./scripts/install_ptscotch.sh ./scripts/
RUN ./scripts/install_ptscotch.sh && rm -rf ./build

COPY ./scripts/install_parmetis.sh ./scripts/
RUN ./scripts/install_parmetis.sh && rm -rf ./build

COPY ./scripts/install_metis.sh ./scripts/
RUN ./scripts/install_metis.sh && rm -rf ./build

COPY ./scripts/install_superlu.sh ./scripts/
RUN ./scripts/install_superlu.sh && rm -rf ./build

COPY ./scripts/install_pexsi.sh ./scripts/
RUN ./scripts/install_pexsi.sh && rm -rf ./build

COPY ./scripts/install_quip.sh ./scripts/
RUN ./scripts/install_quip.sh && rm -rf ./build

COPY ./scripts/install_plumed.sh ./scripts/
RUN ./scripts/install_plumed.sh && rm -rf ./build

COPY ./scripts/install_gsl.sh ./scripts/
RUN ./scripts/install_gsl.sh && rm -rf ./build

COPY ./scripts/install_spglib.sh ./scripts/
RUN ./scripts/install_spglib.sh && rm -rf ./build

COPY ./scripts/install_hdf5.sh ./scripts/
RUN ./scripts/install_hdf5.sh && rm -rf ./build
COPY ./scripts/install_ptscotch.sh \
./scripts/install_parmetis.sh \
./scripts/install_metis.sh \
./scripts/install_superlu.sh \
./scripts/install_pexsi.sh \
./scripts/
RUN ./scripts/install_ptscotch.sh && \
./scripts/install_parmetis.sh && \
./scripts/install_metis.sh && \
./scripts/install_superlu.sh && \
./scripts/install_pexsi.sh && \
rm -rf ./build

COPY ./scripts/install_quip.sh \
./scripts/install_plumed.sh \
./scripts/
RUN ./scripts/install_quip.sh && \
./scripts/install_plumed.sh && \
rm -rf ./build

COPY ./scripts/install_libvdwxc.sh ./scripts/
RUN ./scripts/install_libvdwxc.sh && rm -rf ./build
COPY ./scripts/install_gsl.sh \
./scripts/install_hdf5.sh \
./scripts/
RUN ./scripts/install_gsl.sh && \
./scripts/install_hdf5.sh && \
rm -rf ./build

COPY ./scripts/install_spfft.sh ./scripts/
RUN ./scripts/install_spfft.sh && rm -rf ./build
COPY ./scripts/install_libvdwxc.sh \
./scripts/install_spglib.sh \
./scripts/install_spfft.sh \
./scripts/
RUN ./scripts/install_libvdwxc.sh && \
./scripts/install_spglib.sh && \
./scripts/install_spfft.sh && \
rm -rf ./build

COPY ./scripts/install_sirius.sh ./scripts/
RUN ./scripts/install_sirius.sh && rm -rf ./build

COPY ./scripts/arch_base.tmpl \
./scripts/generate_arch_files.sh ./scripts/
./scripts/generate_arch_files.sh \
./scripts/
RUN ./scripts/generate_arch_files.sh && rm -rf ./build

#EOF

0 comments on commit f4680f8

Please sign in to comment.