From 965a3db9438934c7dbcc68950c88372ec8db5852 Mon Sep 17 00:00:00 2001 From: Paul Mataruso Date: Mon, 21 Jul 2025 04:02:43 +0000 Subject: [PATCH] Add docker-compose.yaml --- docker-compose.yaml | 121 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 docker-compose.yaml diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..75aeeed --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,121 @@ +version: "3.5" + +services: + db: + image: mariadb:10.5 + container_name: librenms_db + command: + - "mysqld" + - "--innodb-file-per-table=1" + - "--lower-case-table-names=0" + - "--character-set-server=utf8mb4" + - "--collation-server=utf8mb4_unicode_ci" + volumes: + - "./db:/var/lib/mysql" + environment: + - "TZ=Pacific/Auckland" + - "MYSQL_ALLOW_EMPTY_PASSWORD=yes" + - "MYSQL_DATABASE=librenms" + - "MYSQL_USER=librenms" + - "MYSQL_PASSWORD=asupersecretpassword" + restart: always + + memcached: + image: memcached:alpine + container_name: librenms_memcached + environment: + - "TZ=Pacific/Auckland" + restart: always + + redis: + image: redis:5.0-alpine + container_name: librenms_redis + environment: + - "TZ=Pacific/Auckland" + restart: always + + librenms: + image: librenms/librenms:latest + container_name: librenms + hostname: librenms + cap_add: + - NET_ADMIN + - NET_RAW + ports: + - target: 8000 + published: 8000 + protocol: tcp + volumes: + - "./librenms:/data" + environment: + - "TZ=Pacific/Auckland" + - "PUID=1000" + - "PGID=1000" + - "DB_HOST=db" + - "DB_NAME=librenms" + - "DB_USER=librenms" + - "DB_PASSWORD=asupersecretpassword" + - "DB_TIMEOUT=60" + - "REDIS_HOST=redis" + - "REDIS_PORT=6379" + - "REDIS_DB=0" + - "MEMORY_LIMIT=256M" + - "UPLOAD_MAX_SIZE=16M" + - "OPCACHE_MEM_SIZE=128" + - "REAL_IP_FROM=0.0.0.0/32" + - "REAL_IP_HEADER=X-Forwarded-For" + - "LOG_IP_VAR=remote_addr" + - "MEMCACHED_HOST=memcached" + - "MEMCACHED_PORT=11211" + - "LIBRENMS_WEATHERMAP=false" + restart: always + + dispatcher: + image: librenms/librenms:latest + container_name: librenms_dispatcher + hostname: librenms-dispatcher + cap_add: + - NET_ADMIN + - NET_RAW + volumes: + - "./librenms:/data" + environment: + - "TZ=Pacific/Auckland" + - "PUID=1000" + - "PGID=1000" + - "DB_HOST=db" + - "DB_NAME=librenms" + - "DB_USER=librenms" + - "DB_PASSWORD=asupersecretpassword" + - "DB_TIMEOUT=60" + - "DISPATCHER_NODE_ID=dispatcher1" + - "REDIS_HOST=redis" + - "REDIS_PORT=6379" + - "REDIS_DB=0" + - "SIDECAR_DISPATCHER=1" + - "MEMORY_LIMIT=256M" + - "UPLOAD_MAX_SIZE=16M" + - "OPCACHE_MEM_SIZE=128" + - "REAL_IP_FROM=0.0.0.0/32" + - "REAL_IP_HEADER=X-Forwarded-For" + - "LOG_IP_VAR=remote_addr" + - "MEMCACHED_HOST=memcached" + - "MEMCACHED_PORT=11211" + - "LIBRENMS_WEATHERMAP=false" + restart: always + + rrdrest: + image: michaelwadman/rrdrest:latest + container_name: rrdrest + volumes: + - "./librenms:/opt/librenms" + + grafana: + image: grafana/grafana-oss:latest + container_name: grafana + ports: + - target: 3000 + published: 3000 + protocol: tcp + environment: + - "GF_INSTALL_PLUGINS=marcusolsson-json-datasource" \ No newline at end of file