So you have been trying the latest Generative AI Models, but not the ones that run in 3rd parties, but LOCAL Models.

You are powering probably with your own laptop or small server and want to see how and if they are struggling.

This is the perfect moment to install NetData (with Docker)

Why NetData?

While cloud-based monitoring services abound, self-hosting Netdata emerges as an alternative for monitoring your HomeLab, granting you control, data privacy, and cost savings.

Netdata runs seamlessly on various systems, including physical and virtual servers, containers, and IoT devices - Supporting Linux, FreeBSD, and MacOS.

Few more Reasons to use Netdata 馃憞
  • Real-time Monitoring: Netdata provides real-time monitoring of your systems and applications. By self-hosting Netdata, you can monitor the performance of your infrastructure in real-time without relying on external services or cloud-based solutions.

  • Data Privacy and Security: Self-hosting Netdata gives you complete control over your monitoring data.

    • You don’t have to send your system metrics to external servers or cloud platforms, ensuring the privacy and security of your data.
  • Customization and Flexibility: When you self-host Netdata, you have the freedom to customize and configure it according to your specific needs.

    • You can choose the plugins and metrics you want to monitor, set up custom alerts, and integrate it with your existing monitoring stack.
  • Offline Monitoring: Self-hosting Netdata allows you to monitor your infrastructure even in offline or restricted network environments.

    • This can be beneficial in certain scenarios where internet connectivity is limited or not available.
  • Cost Savings: By self-hosting Netdata, you can avoid the costs associated with subscribing to external monitoring services.

    • This can be particularly beneficial for small businesses or individuals who want to monitor their infrastructure on a budget.

The Netdata Project

Get a quick overview on how your home server is handling service loads

SelfHosting Netdata

Pre-Requisites!! Just Get Docker 馃悑馃憞

Important step and quite recommended for any SelfHosting Project - Get Docker Installed

It will be one command, this one, if you are in Linux:

apt-get update && sudo apt-get upgrade && curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh && docker version

And install also Docker-compose with:

apt install docker-compose -y

Installing NetData with Docker

For this guide, I assume that you have Docker and Docker compose installed in your local machine.

We are going to be using the NetData Docker Image.

The docker-compose file that I recommend to use is this one (optionally you can use it together with NGINX Proxy Manager):

version: '3.8'
services:
  netdata:
    container_name: netdata
    image: netdata/netdata
    ports:
      - '19999:19999'
    volumes:
      - netdataconfig:/etc/netdata
      - netdatalib:/var/lib/netdata
      - netdatacache:/var/cache/netdata
      - '/etc/passwd:/host/etc/passwd:ro'
      - '/etc/group:/host/etc/group:ro'
      - '/proc:/host/proc:ro'
      - '/sys:/host/sys:ro'
      - '/etc/os-release:/host/etc/os-release:ro'
    restart: unless-stopped
    cap_add:
      - SYS_PTRACE
    security_opt:
      - apparmor=unconfined
    #networks: ["nginx_nginx_network"] #optional 
 
volumes:
  netdataconfig:
  netdatalib:
  netdatacache:

# networks: #optional
#   nginx_nginx_network: #optional
#     external: true #optional

This is it. Now you have your HomeLab monitoring setup with NetData and Docker.

You can visit your Dashboard at: http:localhost:19999

I recommend you to have a look to the options - I Find the sensors section particularly interesting:

Net Data Sensors

Netdata with SSL

If you need SSL certificates, you can always install Netdata with NGINX

Netdata Docker-Compose NGINX ready 馃憞

SelfHost NGINX with Docker

version: '3.8'
services:
  netdata:
    container_name: netdata
    image: netdata/netdata
    ports:
      - '19999:19999'
    volumes:
      - netdataconfig:/etc/netdata
      - netdatalib:/var/lib/netdata
      - netdatacache:/var/cache/netdata
      - '/etc/passwd:/host/etc/passwd:ro'
      - '/etc/group:/host/etc/group:ro'
      - '/proc:/host/proc:ro'
      - '/sys:/host/sys:ro'
      - '/etc/os-release:/host/etc/os-release:ro'
    restart: unless-stopped
    cap_add:
      - SYS_PTRACE
    security_opt:
      - apparmor=unconfined
    #networks: ["nginx_nginx_network"] #optional 
 
volumes:
  netdataconfig:
  netdatalib:
  netdatacache:

# networks: #optional
#   nginx_nginx_network: #optional
#     external: true #optional

FAQ

You can also get Netdata working in SBC like: Raspberry Pi or Orange Pi’s. Small LLMs also work in these!