diff --git a/Dockerfile b/Dockerfile index 6a642cc..22d6c20 100644 --- a/Dockerfile +++ b/Dockerfile @@ -58,17 +58,19 @@ RUN wget --quiet -O - https://packages.icinga.org/icinga.key \ ADD content/ / # Temporary hack to get icingaweb2 modules via git -RUN wget -q --no-cookies -O - "https://github.com/Icinga/icingaweb2/archive/${GITREF_ICINGAWEB2}.tar.gz" \ - | tar xz --strip-components=2 --directory=/etc/icingaweb2/modules -f - icingaweb2-${GITREF_ICINGAWEB2}/modules/monitoring icingaweb2-${GITREF_ICINGAWEB2}/modules/doc \ +RUN mkdir -p /usr/local/share/icingaweb2/modules/ \ + && wget -q --no-cookies -O - "https://github.com/Icinga/icingaweb2/archive/${GITREF_ICINGAWEB2}.tar.gz" \ + | tar xz --strip-components=2 --directory=/usr/local/share/icingaweb2/modules -f - icingaweb2-${GITREF_ICINGAWEB2}/modules/monitoring icingaweb2-${GITREF_ICINGAWEB2}/modules/doc \ # Icinga Director + && mkdir -p /usr/local/share/icingaweb2/modules/director/ \ && wget -q --no-cookies -O - "https://github.com/Icinga/icingaweb2-module-director/archive/${GITREF_DIRECTOR}.tar.gz" \ - | tar xz --strip-components=1 --directory=/etc/icingaweb2/modules/director --exclude=.gitignore -f - \ + | tar xz --strip-components=1 --directory=/usr/local/share/icingaweb2/modules/director --exclude=.gitignore -f - \ && icingacli module enable director \ # Icingaweb2 Graphite - && mkdir -p /etc/icingaweb2/modules/graphite \ + && mkdir -p /usr/local/share/icingaweb2/modules/graphite \ && wget -q --no-cookies -O - "https://github.com/Icinga/icingaweb2-module-graphite/archive/${GITREF_ICINGAWEB2}.tar.gz" \ - | tar xz --strip-components=1 --directory=/etc/icingaweb2/modules/graphite -f - icingaweb2-module-graphite-${GITREF_MODGRAPHITE}/ \ - && cp -r /etc/icingaweb2/modules/graphite/sample-config/icinga2/ /etc/icingaweb2/modules/graphite \ + | tar xz --strip-components=1 --directory=/usr/local/share/icingaweb2/modules/graphite -f - icingaweb2-module-graphite-${GITREF_MODGRAPHITE}/ \ + && cp -r /usr/local/share/icingaweb2/modules/graphite/sample-config/icinga2/ /etc/icingaweb2/modules/graphite \ # Final fixes && mv /etc/icingaweb2/ /etc/icingaweb2.dist \ && mkdir /etc/icingaweb2 \ diff --git a/README.md b/README.md index c715f84..95a7778 100644 --- a/README.md +++ b/README.md @@ -102,6 +102,10 @@ For enabling of SSL support, just add a volume to `/etc/apache2/ssl`, which cont - `icinga2.key`: The corresponding private key - `icinga2.chain` (optional): If a certificate chain is needed, add this file. Consult your CA-vendor for additional info. +# Adding own modules + +To use your own modules, you're able to install these into `enabledModules`-folder of your `/etc/icingaweb2` volume. + ## Environment variables Reference | Environmental Variable | Default Value | Description | diff --git a/content/etc/icingaweb2/.gitkeep b/content/etc/icingaweb2/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/content/etc/icingaweb2/config.ini b/content/etc/icingaweb2/config.ini index f9cd6bd..d54b294 100644 --- a/content/etc/icingaweb2/config.ini +++ b/content/etc/icingaweb2/config.ini @@ -2,7 +2,7 @@ show_stacktraces = "1" config_backend = "db" config_resource = "icingaweb_db" -module_path = "/usr/share/icingaweb2/modules:/etc/icingaweb2/modules" +module_path = "/etc/icingaweb2/userModules:/usr/share/icingaweb2/modules:/usr/local/share/icingaweb2/modules" [logging] log = "file" diff --git a/content/opt/setup/icingaweb2-director b/content/opt/setup/icingaweb2-director index 2805025..2b42a72 100755 --- a/content/opt/setup/icingaweb2-director +++ b/content/opt/setup/icingaweb2-director @@ -9,7 +9,7 @@ if [ "${ICINGA2_FEATURE_DIRECTOR}" == "true" ] || [ "${ICINGA2_FEATURE_DIRECTOR} CREATE DATABASE IF NOT EXISTS director CHARACTER SET 'utf8'; GRANT ALL ON director.* TO director@localhost IDENTIFIED BY '${DIRECTOR_PASSWORD}'; END - mysql director < /etc/icingaweb2/modules/director/schema/mysql.sql >> /var/log/icingaweb2/director-schema.log 2>&1 + mysql director < /usr/local/share/icingaweb2/modules/director/schema/mysql.sql >> /var/log/icingaweb2/director-schema.log 2>&1 ini_set /etc/icingaweb2/resources.ini director password "${DIRECTOR_PASSWORD}"