librenms / docker

LibreNMS Docker image
MIT License
691 stars 278 forks source link

Redis seem to be required by the container, but not according to the documentation #415

Open sandnabba opened 10 months ago

sandnabba commented 10 months ago

Support guidelines

I've found a bug and checked that ...

Description

Hello!

I'm trying to run a minimalistic LibreNMS setup running in Docker.

My plan was to just run the librenms container, and the sidecar dispatcher. However, the dispatcher fails with the following message: ERROR: REDIS_HOST or REDIS_SENTINEL must be defined

But according to the documentation, Redis is only required "when running more than one dispatcher.". There are also no REDIS_ variable documented under the Readme.md#dispatcher-service-container

I got it working with Redis, just using the Docker compose example, but I would like to get the instance as small as possible. It will basically monitor a single device.

So I'm basically just wondering if this is a bug in the documentation, or when setting up the dispatcher sidecar?

Best regards

Expected behaviour

Container should start without a Redis server defined.

Actual behaviour

dispatcher container fails with the following ERROR message: ERROR: REDIS_HOST or REDIS_SENTINEL must be defined

Steps to reproduce

  1. Setup LibreNMS using the compose file in examples/compose/compose.yml
  2. Remove Redis container
  3. Remove "REDIS_HOST" from librenms.env
  4. Start the service with docker compose up

Docker info

Client: Docker Engine - Community
 Version:    24.0.7
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.11.2
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.21.0
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

Server:
 Containers: 15
  Running: 15
  Paused: 0
  Stopped: 0
 Images: 39
 Server Version: 24.0.7
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: d8f198a4ed8892c764191ef7b3b06d8a2eeb5c7f
 runc version: v1.1.10-0-g18a0cb0
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 5.15.0-91-generic
 Operating System: Ubuntu 22.04.3 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 8
 Total Memory: 23.36GiB
 Name: tillberga
 ID: LGK4:I46L:SQ4R:35W3:LDMS:X74Z:Y6ZB:KPAO:RQ6D:4VD7:43Y3:6SO7
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Docker Compose config

No response

Logs

librenms_dispatcher  | >> Sidecar dispatcher container detected
librenms_dispatcher  | >>
librenms_dispatcher  | Waiting 60s for database to be ready...
librenms_dispatcher  | Database ready!
librenms_dispatcher  | NODE_ID: dispatcher1
librenms_dispatcher  | ERROR: REDIS_HOST or REDIS_SENTINEL must be defined
librenms_dispatcher  | [cont-init.d] 05-svc-dispatcher.sh: exited 1.
librenms_dispatcher  | [cont-finish.d] executing container finish scripts...
librenms_dispatcher  | [cont-finish.d] done.

Additional info

No response

gaby commented 10 months ago

It's also using an extremely old Redis image which hasnt been updated in over a year