Skip to content

Commit 27ce6ce

Browse files
committed
Add Ubuntu 22.04 container
1 parent 413bb82 commit 27ce6ce

File tree

2 files changed

+104
-0
lines changed

2 files changed

+104
-0
lines changed

.github/workflows/continuous-integration-workflow.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ jobs:
1212
strategy:
1313
matrix:
1414
config:
15+
- {tag: 'ubuntu22.04', dockerfile: 'docker/ubuntu22.04.dockerfile'}
1516
- {tag: 'fedora38_mingw', dockerfile: 'docker/fedora38_mingw.dockerfile'}
1617
runs-on: ubuntu-latest
1718
steps:

docker/ubuntu22.04.dockerfile

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
FROM ubuntu:22.04
2+
3+
ENV DEBIAN_FRONTEND=noninteractive
4+
5+
RUN apt-get update && \
6+
apt-get install --no-install-recommends -y software-properties-common gpg gpg-agent && \
7+
add-apt-repository ppa:openkim/latest -y && \
8+
apt-get update && \
9+
apt-get upgrade --no-install-recommends -y && \
10+
apt-get install --no-install-recommends -y \
11+
bc \
12+
build-essential \
13+
ccache \
14+
clang \
15+
clang-format \
16+
cmake \
17+
cmake-curses-gui \
18+
curl \
19+
doxygen \
20+
enchant-2 \
21+
g++ \
22+
gcc \
23+
gfortran \
24+
git \
25+
hdf5-tools \
26+
less \
27+
libblas-dev \
28+
libeigen3-dev \
29+
libenchant-2-dev \
30+
libfftw3-dev \
31+
libgsl-dev \
32+
libhdf5-serial-dev \
33+
libhwloc-dev \
34+
libjpeg-dev \
35+
liblapack-dev \
36+
libnetcdf-dev \
37+
libomp-dev \
38+
libopenblas-dev \
39+
libnuma-dev \
40+
libpng-dev \
41+
libproj-dev \
42+
libreadline-dev \
43+
libvtk9-dev \
44+
libyaml-dev \
45+
libzstd-dev \
46+
make \
47+
mpi-default-bin \
48+
mpi-default-dev \
49+
ninja-build \
50+
python3-dev \
51+
python3-pip \
52+
python3-pkg-resources \
53+
python3-setuptools \
54+
python3-virtualenv \
55+
python3-venv \
56+
python-is-python3 \
57+
rsync \
58+
ssh \
59+
texlive \
60+
texlive-latex-recommended \
61+
texlive-formats-extra \
62+
texlive-pictures \
63+
texlive-publishers \
64+
texlive-science \
65+
dvipng \
66+
latexmk \
67+
xindy \
68+
vim-nox \
69+
virtualenv \
70+
voro++-dev \
71+
wget \
72+
xxd \
73+
valgrind \
74+
gdb \
75+
zstd \
76+
libyaml-cpp-dev \
77+
libkim-api-dev \
78+
openkim-models && \
79+
rm -rf /var/lib/apt/lists/*
80+
81+
###########################################################################
82+
# Plumed
83+
###########################################################################
84+
85+
ENV PLUMED_PKG_VERSION=2.8.2
86+
87+
RUN mkdir plumed && \
88+
cd plumed && \
89+
curl -L -o plumed.tar.gz https://github.com/plumed/plumed2/releases/download/v${PLUMED_PKG_VERSION}/plumed-src-${PLUMED_PKG_VERSION}.tgz && \
90+
tar -xzf plumed.tar.gz && \
91+
cd plumed-${PLUMED_PKG_VERSION} && \
92+
./configure --disable-doc --prefix=/usr && \
93+
make && \
94+
make install && \
95+
cd ../../ && \
96+
rm -rvf plumed
97+
98+
ENV LC_ALL=C
99+
ENV PATH=/usr/lib/ccache:$PATH
100+
# tell OpenMPI to not try using Infiniband
101+
ENV OMPI_MCA_btl="^openib"
102+
# do not warn about unused components as this messes up testing
103+
ENV OMPI_MCA_btl_base_warn_component_unused="0"

0 commit comments

Comments
 (0)