da-message-passing / jedi / Dockerfile
Dockerfile
Raw
FROM ubuntu:24.04

RUN apt update
RUN apt install -y git
RUN apt install -y build-essential
RUN apt install -y vim
RUN apt install -y cmake
RUN apt install -y libnetcdff-dev
RUN apt install -y gfortran
RUN apt install -y libblas-dev
RUN apt install -y liblapack-dev
RUN apt install -y libeigen3-dev
RUN apt install -y mpich
RUN apt install -y libboost-all-dev
RUN apt install -y wget curl

WORKDIR /jedi
RUN mkdir build

WORKDIR /deps
RUN git clone --depth 1 https://github.com/ecmwf/ecbuild.git
ENV PATH="${PATH}:/deps/ecbuild/bin"
RUN git clone --depth 1 https://github.com/ecmwf/eckit.git
RUN git clone --depth 1 https://github.com/ecmwf/fckit.git
RUN git clone --depth 1 https://github.com/ecmwf/atlas.git

WORKDIR /deps/eckit-build
RUN ecbuild --prefix=/usr -- ../eckit
RUN make -j24
RUN make install

WORKDIR /deps/fckit-build
RUN ecbuild --prefix=/usr -- ../fckit
RUN make -j24
RUN make install

WORKDIR /deps/atlas-build
RUN ecbuild --prefix=/usr -- ../atlas
RUN make -j24
RUN make install

WORKDIR /jedi
RUN git clone --depth 1 https://github.com/JCSDA/oops.git

WORKDIR /jedi/build
RUN ecbuild ../oops
RUN make -j24