diff options
Diffstat (limited to 'docker-vyos/Dockerfile')
-rw-r--r-- | docker-vyos/Dockerfile | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/docker-vyos/Dockerfile b/docker-vyos/Dockerfile new file mode 100644 index 00000000..cfe505ef --- /dev/null +++ b/docker-vyos/Dockerfile @@ -0,0 +1,68 @@ +# syntax = docker/dockerfile:1 + +# Copyright (C) 2020 VyOS maintainers and contributors +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License version 2 or later as +# published by the Free Software Foundation. +# +# 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/>. + +# Define arguments for VyOS image +ARG VYOS_VERSION +ARG BUILD_DATE +ARG DEBIAN_VERSION + +# Use Debian as base layer +FROM debian:${DEBIAN_VERSION}-slim +# Copy installer script and default build settings +COPY [ "data/defaults.json", "data/live-build-config/archives/*", "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_01.sh", "/tmp/" ] +COPY [ "data/live-build-config/hooks/live/*", "/tmp/hooks/" ] + + +# Install VyOS dependencies +WORKDIR /tmp +RUN bash /tmp/vyos_install_stage_01.sh + + +# Install VyOS specific software +COPY [ "data/defaults.json", "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_02.sh", "/tmp/" ] +RUN bash /tmp/vyos_install_stage_02.sh + + +# Tune system for VyOS +COPY [ "docker-vyos/vyos_install_common.sh", "docker-vyos/vyos_install_stage_03.sh", "/tmp/" ] +# Copy skel for bash profile +COPY data/live-build-config/includes.chroot/etc/skel/.bashrc /etc/skel/.bashrc +# Copy default config +COPY data/live-build-config/includes.chroot/opt/vyatta/etc/config.boot.default /opt/vyatta/etc/ + +RUN bash /tmp/vyos_install_stage_03.sh + +# Delete installer scripts +RUN rm -rf /tmp/* + + +# Make changes specific to the container environment + +# Tell systemd that we are inside container +ENV container=docker + +# Set proper STOPSIGNAL +STOPSIGNAL SIGRTMIN+3 + +# Run VyOS +CMD [ "/lib/systemd/systemd" ] + +# Describe this image +LABEL maintainer="support@vyos.io" \ + description="VyOS for Docker" \ + vendor="Sentrium S.L." \ + version=${VYOS_VERSION} \ + io.vyos.build-date=${BUILD_DATE} |