-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile.Ubuntu
More file actions
30 lines (24 loc) · 1.4 KB
/
Dockerfile.Ubuntu
File metadata and controls
30 lines (24 loc) · 1.4 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
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/cpp/.devcontainer/base.Dockerfile
# [Choice] Debian / Ubuntu version (use Debian 11, Ubuntu 18.04/22.04 on local arm64/Apple Silicon): debian-11, debian-10, ubuntu-22.04, ubuntu-20.04, ubuntu-18.04
FROM ubuntu:22.04
ARG DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
# [Optional] Install additional packages.
RUN apt-get -qq update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y -qq install --no-install-recommends \
build-essential gfortran devscripts wget cmake software-properties-common dirmngr \
libopenblas-dev libgsl-dev
RUN mkdir armadillo && \
wget -qO- http://sourceforge.net/projects/arma/files/armadillo-9.900.6.tar.xz | \
tar -Jxf- --directory=armadillo --strip-components=1 && \
cmake -B armadillo/build -S armadillo -DCMAKE_INSTALL_PREFIX=/usr -DDETECT_HDF5=OFF -DBUILD_SHARED_LIBS=OFF . && \
cmake --build armadillo/build --config Release && \
cmake --install armadillo/build
RUN mkdir catch2 && \
wget -qO- https://github.com/catchorg/Catch2/archive/refs/tags/v3.2.1.tar.gz | \
tar -zxf- --directory=catch2 --strip-components=1 && \
cmake -B catch2/build -S catch2 -DCMAKE_INSTALL_PREFIX=/usr . && \
cmake --build catch2/build --config Release && \
cmake --install catch2/build
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT [ "/entrypoint.sh" ]