# WRF Dockerfile ###### tags: `WRF` ```= FROM centos:7 WORKDIR / RUN yum -y install make && \ yum -y install gcc gcc-c++ csh wget time cmake unzip git libstdc++-devel libXScrnSaver m4 && \ yum -y install net-snmp-devel mysql-devel openssl-devel libtool dos2unix help2man && \ wget https://download.open-mpi.org/release/open-mpi/v3.1/openmpi-3.1.4.tar.gz && \ tar xvf openmpi-3.1.4.tar.gz && \ cd openmpi-3.1.4 && \ ./configure --prefix=/openmpi && \ make && \ make install ENV PATH=$PATH:/openmpi/bin ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/openmpi/lib RUN mkdir /Build_WRF && \ mkdir /Build_WRF/src && \ cd /Build_WRF/src && \ wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-c-4.7.3.tar.gz && \ wget ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-fortran-4.5.2.tar.gz && \ tar -xvzf netcdf-c-4.7.3.tar.gz && \ cd /Build_WRF/src/netcdf-c-4.7.3 && \ CC=icc CXX=icc FC=ifort CPP='icpc -E' CPPFLAGS='-fPIC' ./configure --prefix=/Build_WRF/LIBRARIES/netcdf --disable-netcdf4 --disable-shared --disable-dap && \ make -j2 && \ make install ENV LD_LIBRARY_PATH=/Build_WRF/LIBRARIES/netcdf/lib:$LD_LIBRARY_PATH RUN tar -xzvf /Build_WRF/src/netcdf-fortran-4.5.2.tar.gz && \ cd /Build_WRF/src/netcdf-fortran-4.5.2 && \ CC=icc CXX=icc FC=ifort CPP='icpc -E' CPPFLAGS='-fPIC' CPPFLAGS='-I/Build_WRF/LIBRARIES/netcdf/include' LDFLAGS='-L/Build_WRF/LIBRARIES/netcdf/lib' ./configure --prefix=/Build_WRF/LIBRARIES/netcdf && \ make && \ make install ENV export PATH=/Build_WRF/LIBRARIES/netcdf/bin:$PATH ENV export NETCDF=/Build_WRF/LIBRARIES/netcdf RUN cd /Build_WRF/src && \ wget http://www.zlib.net/fossils/zlib-1.2.11.tar.gz && \ tar -xzvf zlib-1.2.11.tar.gz && \ cd /Build_WRF/src/zlib-1.2.11 && \ CC=icc CXX=icc FC=ifort CPP='icpc -E' ./configure --prefix=/Build_WRF/LIBRARIES/zlib && \ make -j2 && \ make install && \ cd /Build_WRF/src && \ wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.37.tar.gz && \ tar -xzvf libpng-1.6.37.tar.gz && \ cd libpng-1.6.37 && \ CC=icc CXX=icc FC=ifort CPP='icpc -E' CPPFLAGS='-I/Build_WRF/LIBRARIES/zlib/include' LDFLAGS='-L/Build_WRF/LIBRARIES/zlib/lib' ./configure --prefix=/Build_WRF/LIBRARIES/libpng && \ make -j2 && \ make install ENV LD_LIBRARY_PATH=/Build_WRF/LIBRARIES/libpng/lib:$LD_LIBRARY_PATH RUN cd /Build_WRF/src && \ wget http://www.ece.uvic.ca/~mdadams/jasper/software/jasper-1.900.1.zip && \ unzip jasper-1.900.1.zip && \ cd /Build_WRF/src/jasper-1.900.1 && \ ./configure --prefix=/Build_WRF/LIBRARIES/grib2 && \ make -j2 && \ make install ENV PATH=/Build_WRF/LIBRARIES/jasper/bin:$PATH ENV LD_LIBRARY_PATH=/Build_WRF/LIBRARIES/jasper/lib64:$LD_LIBRARY_PATH RUN cd /Build_WRF/ && \ git clone https://github.com/wrf-model/WRF WRF_ISC21 && \ cd /Build_WRF/WRF_ISC21 && \ git checkout tags/ISC21 -b ISC21-branch ENV NETCDF=$NETCDF_DIR ENV WRFIO_NCD_LARGE_FILE_SUPPORT=1 ENV NETCDF_classic=1 RUN ./configure ```