Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
ACS
Public
Power System Simulation and Optimization
DPsim
DPsim
Commits
8d7370ce
Commit
8d7370ce
authored
Feb 04, 2019
by
Markus Mirz
Browse files
add villas dev dockerfiles
parent
0b4d6f69
Changes
2
Hide whitespace changes
Inline
Side-by-side
Packaging/Docker/Dockerfile.dpsim-villas-dev
0 → 100644
View file @
8d7370ce
# Dockerfile for VILLASnode development.
#
# This Dockerfile builds an image which contains all library dependencies
# and tools to build VILLASnode.
# However, VILLASnode itself it not part of the image.
#
# This image can be used for developing VILLASnode
# by running:
# make docker-dev
#
# @author Steffen Vogel <stvogel@eonerc.rwth-aachen.de>
# @copyright 2014-2019, Institute for Automation of Complex Power Systems, EONERC
# @license GNU General Public License (version 3)
#
# VILLASnode
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
###################################################################################
FROM dpsim-dev:latest
ARG GIT_REV=unknown
ARG GIT_BRANCH=unknown
ARG VERSION=unknown
ARG VARIANT=unknown
# Some of the dependencies are only available in our own repo
ADD https://packages.fein-aachen.org/fedora/fein.repo /etc/yum.repos.d/
# Toolchain
RUN dnf -y install \
gcc gcc-c++ \
pkgconfig cmake make ninja-build \
texinfo git curl tar \
protobuf-compiler protobuf-c-compiler
# Several tools only needed for developement and testing
RUN dnf -y install \
doxygen dia graphviz \
openssh-clients \
rpmdevtools rpm-build \
jq nmap-ncat \
iproute \
python-pip \
valgrind gdb gdb-gdbserver \
xmlto dblatex rubygem-asciidoctor \
psmisc procps-ng \
rabbitmq-server mosquitto
# Tools for debugging, coverage, profiling
RUN pip install \
gcovr \
protobuf
# Dependencies
RUN dnf -y install \
openssl-devel \
protobuf-devel \
protobuf-c-devel \
libuuid-devel \
libconfig-devel \
libnl3-devel \
libcurl-devel \
jansson-devel \
libwebsockets-devel \
zeromq-devel \
nanomsg \
libiec61850 \
librabbitmq-devel \
mosquitto-devel \
comedilib-devel \
libibverbs-devel \
librdmacm-devel \
re-devel \
uldaq-devel
# Build & Install Criterion
RUN cd /tmp && \
git clone --recursive https://github.com/Snaipe/Criterion && \
mkdir -p Criterion/build && cd Criterion/build && \
cmake -DCMAKE_INSTALL_LIBDIR=/usr/local/lib64 .. && make -j$(nproc) install && \
rm -rf /tmp/*
# Workaround for libnl3's search path for netem distributions
RUN ln -s /usr/lib64/tc /usr/lib/tc
# Expose ports for HTTP and WebSocket frontend
EXPOSE 80
EXPOSE 443
ENV LD_LIBRARY_PATH /usr/local/lib:/usr/local/lib64
WORKDIR /villas
ENTRYPOINT bash
LABEL \
org.label-schema.schema-version="1.0" \
org.label-schema.name="VILLASnode" \
org.label-schema.license="GPL-3.0" \
org.label-schema.vcs-ref="$GIT_REV" \
org.label-schema.vcs-branch="$GIT_BRANCH" \
org.label-schema.version="$VERSION" \
org.label-schema.variant="$VARIANT" \
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.description="A image containing all build-time dependencies for VILLASnode based on Fedora" \
org.label-schema.url="http://fein-aachen.org/projects/villas-framework/" \
org.label-schema.vcs-url="https://git.rwth-aachen.de/VILLASframework/VILLASnode" \
org.label-schema.usage="https://villas.fein-aachen.org/doc/node-installation.html#node-installation-docker"
Packaging/Docker/Dockerfile.no-villas-dev
0 → 100644
View file @
8d7370ce
FROM fedora:29
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 \
expat-devel \
graphviz-devel \
sundials-devel \
libcimpp16v29a \
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
# Activate Jupyter extensions
RUN dnf -y --refresh install npm
RUN jupyter nbextension enable --py widgetsnbextension
RUN jupyter labextension install @jupyter-widgets/jupyterlab-manager
EXPOSE 8888
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment