-
Notifications
You must be signed in to change notification settings - Fork 21
/
Dockerfile.intel
34 lines (30 loc) · 1.29 KB
/
Dockerfile.intel
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
FROM ecpe4s/ubuntu20.04-oneapi-x86_64:22.02 as builder
LABEL maintainer "Tom Robinson"
COPY spack_intel_gfdl_model.yaml /spack.yaml
RUN export SPACK_DISABLE_LOCAL_CONFIG=1 \
&& export SPACK_USER_CACHE_PATH=/tmp/_spack_cache \
&& . /spack/share/spack/setup-env.sh \
&& spack -e . concretize -f | tee concretize.log \
&& spack -e . buildcache keys -it \
&& spack -e . install --cache-only \
&& spack clean -a
## Build the model
RUN mkdir -p /opt/AM4
RUN git clone --recursive https://github.com/NOAA-GFDL/AM4.git -b 2021.03 \
&& cd AM4/exec \
&& make HDF_INCLUDE=-I/opt/hdf5/include \
&& cp am4_xanadu_2021.03.x /opt/AM4 \
&& make clean_all
##############################################################################################################
# Stage 2 with the minimum
#FROM intel/oneapi-runtime:centos8
#RUN ls
#COPY --from=builder /opt/netcdf-c /opt/netcdf-c
#COPY --from=builder /opt/netcdf-fortran /opt/netcdf-fortran
#COPY --from=builder /opt/hdf5 /opt/hdf5
#COPY --from=builder /opt/AM4 /opt/AM4
#ENV PATH=/opt/AM4:/opt/netcdf-fortran/bin:/opt/netcdf-c/bin:${PATH}
#ENV LD_LIBRARY_PATH=/opt/netcdf-c/lib:/opt/hdf5/lib:/opt/netcdf-fortran/lib:/opt/io_libs/lib${LD_LIBRARY_PATH}
#ENV LIBRARY_PATH=${LD_LIBRARY_PATH}
## Add permissions to the AM4
RUN chmod 777 /opt/AM4/am4_xanadu_2021.03.x