Commit 304ceff9 authored by Markus Mirz's avatar Markus Mirz
Browse files

Merge branch 'install-scripts' into 'master'

Install scripts

See merge request acs/public/simulation/dpsim!148
parents ebeedc02 243362d2
......@@ -6,7 +6,7 @@
url = https://github.com/eigenteam/eigen-git-mirror
[submodule "Dependencies/libcimpp"]
path = Dependencies/libcimpp
url = https://github.com/RWTH-ACS/libcimpp
url = https://github.com/CIM-IEC/libcimpp.git
[submodule "Dependencies/spdlog"]
path = Dependencies/spdlog
url = https://github.com/gabime/spdlog
......@@ -10,9 +10,7 @@ LABEL \
org.label-schema.author.name = "Steffen Vogel" \
org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \
org.label-schema.url = "http://fein-aachen.org/projects/dpsim/" \
org.label-schema.vcs-url = "https://git.rwth-aachen.de/acs/core/simulation/DPsim"
ADD https://packages.fein-aachen.org/fedora/fein.repo /etc/yum.repos.d/
org.label-schema.vcs-url = "https://git.rwth-aachen.de/acs/public/simulation/dpsim"
RUN dnf -y update
......@@ -32,21 +30,45 @@ RUN dnf -y install \
RUN dnf --refresh -y install \
python3-devel \
eigen3-devel \
expat-devel \
libxml2-devel \
spdlog-devel \
graphviz-devel \
sundials-devel \
libcimpp16v29a \
libvillas-devel-${VILLAS_VERSION} \
villas-node-${VILLAS_VERSION} \
gsl-devel
# Install some debuginfos
RUN dnf -y debuginfo-install \
python3
# CIMpp and VILLAS are installed here
ENV LD_LIBRARY_PATH /usr/local/lib64
# VILLAS dependencies
RUN dnf -y install \
openssl-devel \
libuuid-devel \
libconfig-devel \
libnl3-devel \
libcurl-devel \
jansson-devel \
libwebsockets-devel \
mosquitto-devel
# Install CIMpp from source
RUN cd /tmp && \
git clone --recurse-submodules https://github.com/CIM-IEC/libcimpp.git && \
mkdir -p libcimpp/build && cd libcimpp/build && \
cmake -DCMAKE_INSTALL_LIBDIR=/usr/local/lib64 -DUSE_CIM_VERSION=IEC61970_16v29a -DBUILD_SHARED_LIBS=ON -DBUILD_ARABICA_EXAMPLES=OFF .. && make -j$(nproc) install && \
rm -rf /tmp/libcimpp
# Install VILLAS from source
RUN cd /tmp && \
git clone --recurse-submodules https://git.rwth-aachen.de/acs/public/villas/node.git villasnode && \
mkdir -p villasnode/build && cd villasnode/build && \
cmake -DWITH_NODE_ETHERCAT=OFF -DCMAKE_INSTALL_LIBDIR=/usr/local/lib64 .. && make -j$(nproc) install && \
rm -rf /tmp/villasnode
# Python dependencies
ADD requirements.txt .
RUN pip3 install -r requirements.txt
......
FROM fedora:29
ARG VILLAS_VERSION=0.8.0
LABEL \
org.label-schema.schema-version = "1.0" \
org.label-schema.name = "DPsim" \
org.label-schema.license = "GPL-3.0" \
org.label-schema.vendor = "Institute for Automation of Complex Power Systems, RWTH Aachen University" \
org.label-schema.author.name = "Steffen Vogel" \
org.label-schema.author.email = "stvogel@eonerc.rwth-aachen.de" \
org.label-schema.url = "http://fein-aachen.org/projects/dpsim/" \
org.label-schema.vcs-url = "https://git.rwth-aachen.de/acs/core/simulation/DPsim"
ADD https://packages.fein-aachen.org/fedora/fein.repo /etc/yum.repos.d/
RUN dnf -y update
# Toolchain
RUN dnf -y install \
git clang gdb ccache \
redhat-rpm-config \
rpmdevtools \
make cmake ninja-build \
doxygen \
graphviz \
pandoc \
python3-pip \
pkg-config
# Dependencies
RUN dnf --refresh -y install \
python3-devel \
eigen3-devel \
spdlog-devel \
graphviz-devel \
sundials-devel \
libcimpp16v29a \
libvillas-devel-${VILLAS_VERSION} \
villas-node-${VILLAS_VERSION} \
gsl-devel
# Install some debuginfos
RUN dnf -y debuginfo-install \
python3
ENV LD_LIBRARY_PATH /usr/local/lib64
ADD requirements.txt .
RUN pip3 install -r requirements.txt
# Remove this part in the future and use dedicated jupyter Dockerfile
# Activate Jupyter extensions
ADD requirements-jupyter.txt .
RUN pip3 install -r requirements-jupyter.txt
RUN dnf -y --refresh install npm
RUN jupyter nbextension enable --py widgetsnbextension
RUN jupyter labextension install @jupyter-widgets/jupyterlab-manager
EXPOSE 8888
dnf -y update
# Toolchain
dnf -y install \
git clang gdb ccache \
redhat-rpm-config \
rpmdevtools \
make cmake ninja-build \
doxygen \
graphviz \
pandoc \
python3-pip \
pkg-config
# Dependencies
dnf --refresh -y install \
python3-devel \
eigen3-devel \
libxml2-devel \
spdlog-devel \
graphviz-devel \
sundials-devel \
gsl-devel
# Python
pip3 install --user -r requirements.txt
pip3 install --user -r requirements-jupyter.txt
dnf -y --refresh install npm
jupyter nbextension enable --py widgetsnbextension
jupyter labextension install @jupyter-widgets/jupyterlab-manager
# VILLAS dependencies
sudo dnf install \
openssl-devel \
libuuid-devel \
libconfig-devel \
libnl3-devel \
libcurl-devel \
jansson-devel \
libwebsockets-devel \
mosquitto-devel \
# add lib64 to library search path
grep -qxF '/usr/local/lib64' /etc/ld.so.conf || echo '/usr/local/lib64' | sudo tee -a /etc/ld.so.conf
sudo ldconfig
# FEIN libraries
cd /tmp && \
git clone --recurse-submodules https://github.com/CIM-IEC/libcimpp.git && \
mkdir -p libcimpp/build && cd libcimpp/build && \
cmake -DCMAKE_INSTALL_LIBDIR=/usr/local/lib64 -DUSE_CIM_VERSION=IEC61970_16v29a -DBUILD_SHARED_LIBS=ON -DBUILD_ARABICA_EXAMPLES=OFF .. && sudo make -j$(nproc) install && \
rm -rf /tmp/libcimpp
cd /tmp && \
git clone --recurse-submodules https://git.rwth-aachen.de/acs/public/villas/node.git villasnode && \
mkdir -p villasnode/build && cd villasnode/build && \
cmake -DWITH_NODE_ETHERCAT=OFF -DCMAKE_INSTALL_LIBDIR=/usr/local/lib64 .. && sudo make -j$(nproc) install && \
rm -rf /tmp/villasnode
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment