Sign inSign up

jchonig/mmonit

By jchonig

Updated 6 days ago

M/Monit in a container, based on linuxserver.io Ubuntu base container

Image
2

10K+

jchonig/mmonit repository overview

docker-mmonit

A container running M/Monit.

Image hosted at: ghcr.io/jchonig/mmonit

Usage

docker

docker create \
  --name=mmonit \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -e MMONIT_LICENSE_OWNER="Fred" \
  -e MMONIT_LICENSE_KEY="<M/Monit license key>" \
  --expose 8080 \
  -v </path/to/appdata/config>:/config \
  -v </path/to/backupdir>:/backup \
  --restart unless-stopped \
  ghcr.io/jchonig/mmonit
docker-compose

Compatible with docker-compose v2 schemas.

---
version: "2"
services:
  monit:
    image: ghcr.io/jchonig/mmonit
    container_name: mmonit
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
      - MMONIT_LICENSE_OWNER="Fred"
      - MMONIT_LICENSE_KEY="<M/Monit license key>"
    volumes:
      - </path/to/appdata/config>:/config
      - </path/to/backupdir>:/backup
    expose:
      - 8080
    restart: unless-stopped

Parameters

Ports (--expose)

VolumeFunction
8080Used for web access and for clients to report in

Environment Variables (-e)

EnvFunction
PUID=1000for UserID - see below for explanation
PGID=1000for GroupID - see below for explanation
TZ=UTCSpecify a timezone to use EG UTC
MMONIT_VERSIONThe version of M/Monit to build
MMONIT_LICENSE_OWNEROwner name from M/Monit license
MMONIT_LICENSE_KEYText of the M/Monit license
MMONIT_DATABASE_URLURL to access the M/Monit database
MMONIT_LIMIT_FDOverride the default of 4096
MMONIT_TLS_VERSIONOverride the TLS version

Volume Mappings (-v)

VolumeFunction
/configAll the config files reside here
/backupOptional location to store periodic backups

Application Setup

  • Environment variables can also be passed in a file named env in the config directory. This file is sourced by the shell.
  • The M/Monit configuration directories are extracted into a directory in /config named monit-${MONIT_VERSION} unless it already exists.
  • It is recommended to use nginx as an SSL proxy for security.

Backups

If the /backup volume is mounted, periodic (hourly, daily, weekly and monthly) backups will be created with a retention of (25 hours, 8 days, 5 weeks, and 12 months respectively). The onwership will be the container PUID and PGID.

Logs will be stored in /config/logs/backup.log and rotated monthly.

Upgrading

  • The container will automatically run the M/Monit upgrade script if /config/version indicates an older version was last run.
  • Old versions /config/mmonit-${MMONIT_VERSION} will need to be manually removed at this time.

TODO

  • Facilitate setup of a database other than sqlite3.
  • Backup databases other than sqlite3
  • Keep only last version of mmonit-${VERSION} dir

Tag summary

Content type

Image

Digest

sha256:a9d94f0aa

Size

26.3 MB

Last updated

6 days ago

docker pull jchonig/mmonit