Lightweight, self-contained Linux® server monitoring tool
10K+
Lightweight, self-contained Linux® server monitoring tool.
Zero dependencies. No external databases. Single binary. Just deploy and go.
Temporary, no persistent storage
docker run --rm -it --name kula --pid host --network host -v /proc:/proc:ro c0m4r/kula:latest
With persistent storage:
docker run -d --name kula --pid host --network host -v /proc:/proc:ro -v kula_data:/app/data c0m4r/kula:latest
docker logs -f kula
Dashbord will be available at: http://localhost:27960
You can change default port and listen address in config.yaml or using environment variables:
KULA_LISTEN="127.0.0.1"
KULA_PORT=27960
e.g.
docker run --rm -it -e KULA_LISTEN="127.0.0.1" -e KULA_PORT="1234" --name kula --pid host --network host -v /proc:/proc:ro c0m4r/kula:latest
Some settings can be overridden by environment variables
services:
kula:
image: c0m4r/kula:latest
container_name: kula
pid: "host" # Critical for monitoring host processes
network_mode: "host" # Useful for network monitoring
volumes:
# To monitor the host system, we need access to host's /proc
- /proc:/proc:ro
# Mount the configuration file from the host
- ./config.yaml:/app/config.yaml:ro
# Persist data
- kula_data:/app/data
# Use 'serve' command
command: [ "serve", "--config", "/app/config.yaml" ]
restart: unless-stopped
volumes:
kula_data:
Quick setup:
mkdir kula_docker
cd kula_docker
wget https://raw.githubusercontent.com/c0m4r/kula/refs/heads/main/addons/docker/docker-compose.yml
wget https://raw.githubusercontent.com/c0m4r/kula/refs/heads/main/config.example.yaml -O config.yaml
docker compose up -d
sleep 1 ; curl http://localhost:27960/health ; echo
docker logs -f kula
All settings live in config.yaml. See config.example.yaml for defaults.
GNU Affero General Public License v3.0
Content type
Image
Digest
sha256:5dc0d715c…
Size
15.9 MB
Last updated
5 days ago
docker pull c0m4r/kula