All checks were successful
Publish Docker image / Push Docker image to Docker Hub (release) Successful in 1h5m48s
60 lines
1.9 KiB
Docker
60 lines
1.9 KiB
Docker
FROM fedora:42
|
|
|
|
RUN dnf install -y gcc wget perl git autoconf automake libtool m4 gettext bzip2-libs libtool bzip2 xz mpfr-devel gmp-devel libmpc-devel zlib-devel glibc-devel.i686 glibc-devel isl-devel g++ gcc-gnat gcc-gdc libgphobos-static
|
|
RUN dnf install -y gmp mpfr fftw awk
|
|
RUN dnf install -y dnf-plugins-core
|
|
RUN dnf install -y openmpi openmpi-devel
|
|
RUN dnf install -y hdf5 hdf5-devel hdf5-static
|
|
RUN dnf group install -y development-tools
|
|
RUN dnf install -y mpfr-devel gmp-devel libmpc-devel zlib-devel glibc-devel.i686 glibc-devel isl-devel g++ gcc-gnat gcc-gdc libgphobos-static openssl-devel
|
|
RUN dnf install -y node
|
|
|
|
ARG user=researcher
|
|
ARG group=researcher
|
|
ARG uid=1000
|
|
ARG gid=1000
|
|
RUN groupadd -g ${gid} ${group}
|
|
RUN useradd -u ${uid} -g ${group} -m ${user}
|
|
|
|
# Switch to user
|
|
USER ${uid}:${gid}
|
|
SHELL ["/bin/bash", "-c"]
|
|
ARG prefix=/home/${user}/libs
|
|
WORKDIR ${prefix}
|
|
|
|
WORKDIR ${prefix}
|
|
# Install LIME
|
|
RUN wget http://usqcd-software.github.io/downloads/c-lime/lime-1.3.2.tar.gz
|
|
RUN tar xvzf lime-1.3.2.tar.gz
|
|
WORKDIR ${prefix}/lime-1.3.2
|
|
RUN ./configure --prefix ${prefix}
|
|
RUN make all install
|
|
|
|
ENV PATH=/usr/lib64/openmpi/bin:$PATH
|
|
ENV LD_LIBRARY_PATH=/usr/lib64/openmpi/lib
|
|
|
|
WORKDIR /home/${user}
|
|
RUN git clone https://github.com/paboyle/Grid.git
|
|
WORKDIR /home/${user}/Grid
|
|
RUN git checkout 5a4f9bf2e35787e39e4f87c37d8acd0c56fa49c9
|
|
|
|
RUN ./bootstrap.sh
|
|
|
|
RUN mkdir build
|
|
WORKDIR /home/${user}/Grid/build
|
|
RUN ../configure --enable-comms=mpi-auto --enable-simd=AVX2 --enable-shm=shmopen --prefix=${prefix} CXX=g++ MPICXX=mpicc LDFLAGS=-L${prefix}/lib/ CXXFLAGS="-I${prefix}/include/ -std=c++17 -fpermissive"
|
|
RUN make -j 4
|
|
RUN make install
|
|
|
|
WORKDIR /home/${user}
|
|
RUN git clone https://github.com/aportelli/Hadrons.git
|
|
WORKDIR /home/${user}/Hadrons
|
|
RUN git checkout 9f5ed3e818d6293f84c950e135015062309dbaa8
|
|
RUN ./bootstrap.sh
|
|
RUN mkdir build
|
|
WORKDIR /home/${user}/Hadrons/build
|
|
RUN ../configure --with-grid=${prefix} --prefix=${prefix}
|
|
RUN make -j4
|
|
RUN make install
|
|
|
|
|