Add docker-compose.yaml

This commit is contained in:
2025-07-21 04:02:43 +00:00
parent 3ccc983671
commit 965a3db943

121
docker-compose.yaml Normal file
View File

@@ -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"