Naemon image with configurable LDAP/SSL/Jabber configuration support
50K+
A turnkey Naemon image ready for most deployment situations. The key features are:
/data volumeWarning: Since Naemon updates can include significant one-way changes, you shouldn't use the "latest" tag outside of testing. All examples in this documentation expect that the you will replace "TAG" with a recent version
The command below will setup a Naemon container with email notification support through an SMTP server, with an externalized configuration set for easy container replacement.
docker run --name naemon -h naemon -d -p 80:80 \
-e SMTP_HOST="smtp.example.com" \
-e SMTP_PORT=25 \
-e [email protected] \
-e SMTP_PASS=naemonbotpass \
-e NOTIFICATION_FROM="[email protected]"\
-v /somepath/naemon_mnt:/data xetusoss/naemon:TAG
25.true if the SMTP_PORT is anything other than 25, otherwise false.true if WEB_LDAP_HOST is defined, otherwise false.false.true if WEB_LDAP_SSL_CA is defined, otherwise false389 if WEB_LDAP_SSL is false, and 686 if true.uid.[email protected] would have a deafult of im.corp.com.5222.WEB_LDAP_FILTER already restricts access to users with specific attributes. Default false.naemon@$HOSTNAME. _Note: This is changeable in the externalized configuration.The command below will setup a container with Thruk configured to authenticate users against an LDAP backend, but restricts access using the group filter.
docker run --name naemon -h naemon -d -p 80:80 \
-e SMTP_HOST="smtp.example.com" \
-e SMTP_PORT=25 \
-e [email protected] \
-e SMTP_PASS=naemonbotpass \
-e WEB_LDAP_HOST=ldap.example.com \
-e WEB_LDAP_BIND_DN="uid=naemonuser,dc=example,dc=com"\
-e WEB_LDAP_BIND_PASS=pass \
-e WEB_LDAP_BASE_DN="dc=example,dc=com"\
-e WEB_USERS_FULL_ACCESS=true\
-e WEB_LDAP_FILTER="(memberof=cn=naemonusers,cn=groups,dc=example,dc=com)"\
-e NOTIFICATION_FROM="[email protected]"\
-v /somepath/naemon_mnt:/data xetusoss/naemon:TAG
The command below will setup a container configured to speak to a Jabber server over SSL for notifications.
docker run --name naemon -h naemon -d -p 80:80 \
-e [email protected] \
-e JABBER_PASS='secret' \
-e JABBER_PORT=5223 \
-v /somepath/naemon_mnt:/data xetusoss/naemon:TAG
Note, this will only define the configuration commands for jabber notifications - service checks still need to be configured to use it! See "Managing Naemon Configuration" below
The Naemon configuration can be found under data volume at /data/etc/naemon/ and is intended to be managed either directly on the file system or via Thruk.
It is recommended to add any custom scripts under the /data/ volume. By keeping customizations isolated to the /data/ volume, it makes swapping out the Naemon container a trivial task.
When using the Jabber-related environment variables, notification commands are added to the Naemon configuration in the /data/etc/naemon/notify_jabber_commands.cfg. By default, there are two sets of commands which can be used for different scenarios, and their names are fairly intuitive.
Of course, these commands can't work without being used within a contact. Below is an example of a chatroom contact that will receive messages via the jabber:
define contact {
contact_name sysadmins
alias System Admins
use generic-contact
email [email protected]
address1 [email protected]
host_notification_commands notify-host-by-jabber-chatroom-ssl
service_notification_commands notify-service-by-jabber-chatroom-ssl
}
Contributions and feedback are welcome. Pull request and issues will be accepted via github.
Content type
Image
Digest
sha256:9e8f21124…
Size
267.8 MB
Last updated
over 9 years ago
docker pull xetusoss/naemon