services: db: image: mariadb:10.5 container_name: librenms_db command: - mysqld - --innodb-file-per-table=1 - --lower-case-table-names=1 - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci volumes: - ./db:/var/lib/mysql environment: - TZ=${TZ} - MYSQL_DATABASE=librenms - MYSQL_USER=librenms - MYSQL_PASSWORD=${MYSQL_PASSWORD} - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} restart: always redis: image: redis:6.0-alpine container_name: librenms_redis environment: - TZ=${TZ} restart: always librenms: image: librenms/librenms:latest container_name: librenms hostname: librenms ports: - "8000:8000" volumes: - ./librenms:/data depends_on: - db - redis environment: - TZ=${TZ} - PUID=1000 - PGID=1000 - APP_URL=http://10.102.1.201:8000 - DB_HOST=db - DB_NAME=librenms - DB_USER=librenms - DB_PASSWORD=${MYSQL_PASSWORD} - REDIS_HOST=redis restart: always cron: image: librenms/librenms:latest container_name: librenms_cron hostname: librenms-cron volumes: - ./librenms:/data depends_on: - db - redis environment: - TZ=${TZ} - PUID=1000 - PGID=1000 - DB_HOST=db - DB_NAME=librenms - DB_USER=librenms - DB_PASSWORD=${MYSQL_PASSWORD} - REDIS_HOST=redis - SIDECAR_CRON=1 restart: always dispatcher: image: librenms/librenms:latest container_name: librenms_dispatcher hostname: librenms-dispatcher volumes: - ./librenms:/data depends_on: - db - redis environment: - TZ=${TZ} - PUID=1000 - PGID=1000 - DB_HOST=db - DB_NAME=librenms - DB_USER=librenms - DB_PASSWORD=${MYSQL_PASSWORD} - REDIS_HOST=redis - LIBRENMS_ALLOW_LOGIN_GET=true - DISPATCHER_NODE_ID=dispatcher1 - SIDECAR_DISPATCHER=1 restart: always grafana: image: grafana/grafana-oss:latest container_name: grafana ports: - "3000:3000" volumes: - ./grafana_data:/var/lib/grafana environment: - TZ=${TZ} - GF_SECURITY_ADMIN_PASSWORD=admin - GF_USERS_ALLOW_SIGN_UP=false restart: always