-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy pathDockerfile-base-ubuntu22.04-intel2024
More file actions
62 lines (59 loc) · 2.47 KB
/
Dockerfile-base-ubuntu22.04-intel2024
File metadata and controls
62 lines (59 loc) · 2.47 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
FROM intel/hpckit:2024.2.1-0-devel-ubuntu22.04 as builder
## Clone spack
RUN mkdir -p /opt && cd /opt && git clone -b v0.22.2 https://github.com/spack/spack.git
# What we want to install and how we want to install it
# is specified in a manifest file (spack.yaml)
RUN mkdir -p /opt/spack-environment && \
set -o noclobber \
&& (echo spack: \
&& echo ' mirrors:'\
&& echo ' E4S: https://cache.e4s.io/noaa'\
&& echo ' definitions:' \
&& echo ' - packages_builtin:' \
&& echo ' - bacio%oneapi@2024.2.1' \
&& echo ' - hdf5@1.14.3%oneapi@2024.2.1' \
&& echo ' - ip%oneapi@2024.2.1' \
&& echo ' - libyaml@0.2.5%oneapi@2024.2.1' \
&& echo ' - nccmp@1.9.1.0%oneapi@2024.2.1' \
&& echo ' - netcdf-c@4.9.2%oneapi@2024.2.1' \
&& echo ' - netcdf-fortran@4.6.1%oneapi@2024.2.1' \
&& echo ' - sp@2.3.3%oneapi@2024.2.1' \
&& echo ' - w3emc@2.11.0' \
&& echo ' - w3nco@2.4.1' \
&& echo ' - zlib%oneapi@2024.2.1' \
&& echo ' - zlib-ng@2.1.4%oneapi@2024.2.1' \
&& echo ' packages:' \
&& echo ' intel-oneapi-mpi:' \
&& echo ' buildable: false' \
&& echo ' externals:' \
&& echo ' - spec: intel-oneapi-mpi@2021.10.0' \
&& echo ' path: /opt/intel/oneapi/mpi/2021.10.0' \
&& echo ' mpi:' \
&& echo ' require: intel-oneapi-mpi' \
&& echo ' hdf5:' \
&& echo ' variants: +fortran+hl+szip' \
&& echo ' netcdf-c:' \
&& echo ' variants: +dap' \
&& echo ' pango:' \
&& echo ' variants: +X' \
&& echo ' all:' \
&& echo ' target: [x86_64]' \
&& echo ' providers:' \
#&& echo ' mpi: [mpich]' \
&& echo ' zlib-api: [zlib-ng+compat, zlib]' \
&& echo ' compiler: [oneapi]' \
&& echo ' specs:' \
&& echo ' - matrix:' \
&& echo ' - [$packages_builtin]' \
&& echo ' concretizer:' \
&& echo ' unify: True' \
&& echo ' config:' \
&& echo ' install_tree: /opt/software' \
&& echo ' view: /opt/views/view') > /opt/spack-environment/spack.yaml
# Install the software, remove unnecessary deps
RUN . /opt/spack/share/spack/setup-env.sh && cd /opt/spack-environment && spack compiler add
RUN . /opt/spack/share/spack/setup-env.sh && cd /opt/spack-environment && spack compiler add && spack --verbose env activate . && spack --verbose install --fail-fast && spack gc -y
ENV LD_LIBRARY_PATH /opt/views/view/lib:$LD_LIBRARY_PATH
ENV LIBRARY_PATH /opt/views/view/lib:$LIBRARY_PATH
ENV PATH $PATH:/opt/views/view/bin
ENTRYPOINT [ "/bin/bash" ]