# 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 . # 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}