commit 4c9dbfce50ca7720281bce0bb811251079d0392b Author: Jack-Benny Persson Date: Fri Apr 24 21:02:08 2020 +0200 Initial commit diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..1042ff1 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +version: "3.8" +services: + + icinga: + build: + context: ./image-files + dockerfile: Dockerfile + environment: + - HOST= + - MASTERHOST= + - MASTERPORT=5665 + - PARENTZONE= + - TICKET= diff --git a/image-files/Dockerfile b/image-files/Dockerfile new file mode 100644 index 0000000..e362db1 --- /dev/null +++ b/image-files/Dockerfile @@ -0,0 +1,13 @@ +FROM ubuntu:18.04 +RUN apt-get update && apt-get upgrade -y && apt-get install wget gnupg expect -y && \ + wget -O - https://packages.icinga.com/icinga.key | apt-key add - +RUN printf "deb http://packages.icinga.com/ubuntu icinga-bionic main\ndeb-src http://packages.icinga.com/ubuntu icinga-bionic main" > /etc/apt/sources.list.d/icinga2.list && \ + apt-get update && apt-get install icinga2 -y && \ + mkdir /run/icinga2 && chown nagios:nagios /run/icinga2 && \ + mkdir -p /var/lib/icinga2/certs && \ + chown -R nagios:nagios /var/lib/icinga2/certs + +COPY create-satellite.sh /create-satellite.sh +RUN chmod +x /create-satellite.sh + +CMD /create-satellite.sh ; /usr/sbin/icinga2 daemon diff --git a/image-files/create-satellite.sh b/image-files/create-satellite.sh new file mode 100755 index 0000000..353a7fd --- /dev/null +++ b/image-files/create-satellite.sh @@ -0,0 +1,19 @@ +#!/bin/bash +icinga2 pki new-cert --cn $HOST \ +--key /var/lib/icinga2/certs/${HOST}.key \ +--cert /var/lib/icinga2/certs/${HOST}.crt + +icinga2 pki save-cert --key /var/lib/icinga2/certs/${HOST}.key \ +--cert /var/lib/icinga2/certs/${HOST}.crt \ +--trustedcert /var/lib/icinga2/certs/${MASTERHOST}.crt \ +--host ${MASTERHOST} + +icinga2 node setup --ticket $TICKET \ +--cn $HOST \ +--endpoint ${MASTERHOST},${MASTERHOST},${MASTERPORT} \ +--zone $HOST \ +--parent_zone $PARENTZONE \ +--parent_host $MASTERHOST \ +--trustedcert /var/lib/icinga2/certs/${MASTERHOST}.crt \ +--accept-commands --accept-config \ +--disable-confd