Heimdall Dashboard

I've shown you the Homer Dash in the past, and it is a termendousely great dashboard.  The only downside (if you can call it that) is having to change a configuration file in order to add new cards, modify existing cards, or remove cards.  

That's where Heimdall really stands out to me.  It has a very nice Graphical User Interface, and beyond getting it installed and ready to go in a docker-compose (you can use the Portainer GUI to install Heimdall BTW) you work completely in the web browser for setup and configuration.  It's really a great experience from the perspecitve of making a simple, easy to use dashboard for the average person.  The other really great feature is the ability to have multiple users and separated dashboards for each user when desired.

Today we'll install Heimdall using Docker-CE and Docker-Compose.  After that, check out the video above for the quick GUI overview.

What you'll need

  • A server or machine you want to run Heimdall from.
  • Docker-CE and Docker-compose installed and ready (alternatively you can use Portainer if you have it already).
  • About 30 minutes of your time (less if you just follow this guide and then jump into the UI on your own).

Installation

If you don't already have Docker and Docker-Compose installed, you'll want to get those setup first.

I have a script out on GitHub that will install Docker-CE, Docker-Compose, NGinX Proxy Manager, and Portainer-CE (all optional) for you.

Just open a terminal and run the following command to pull down the script to your local machine:

wget https://raw.githubusercontent.com/bmcgonag/docker_installs/main/insstall_docker_nproxyman.sh

This will download a script called "install_docker_nproxyman.sh" to your current directory.

Change the permissions on the file to allow it to run with:

chmod +x install_docker_nproxyman.sh

and then run the script with:

./install_docker_nproxyman.sh

You'll be prompted to identify your OS/Distro.  If you run an OS based on one of the options, simply select that option.

Next, you'll be asked if you want to install Docker, Docker-CE, NGinX Proxy Manager, and / or Portainer-CE.

Feel free to install them all, or just Docker and Docker-Compose.  that's completely up to you.

Installing Heimdall

Now, we want to create a directory for Heimdall.

mkdir heimdall

and then move into that directory:

cd heimdall

Next we need to create a file calleed "docker-compose.yml":

nano docker-compose.yml

Now we need to paste the following into the file we've just opened.

version: "2.1"
services:
  heimdall:
    image: lscr.io/linuxserver/heimdall
    container_name: heimdall
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Chicago
    volumes:
      - /home/<your-user>/heimdall/config:/config
    ports:
      - 8080:80
    restart: unless-stopped

You'll want to change a couple of things in the file you just pasted.

  1. change the TZ (timezone) if needed, to be the correct timezone for your location.
  2. change the PUID and PGID to be your user's group and user IDs. You can find them in the terminal by typing the command id.
  3. On the left side of the colon ":" in the volume section, make sure to set the path to where you have created the "heimdall" folder above.
  4. On the left side of the colon ":" in the ports section, make sure to set a port that is not in use on your host.  If 8080 is free, then just use it.

Now, save the file with CTRL + O, then Enter to confirm, and exit the nano editor with CTRL + X.

Now, you just need to run the docker-compose command to bring up your dashboard.

docker-compose up -d

Give it time to download the image, and start the container.  When you see "done" in the terminal, give it another 10 seconds or so, and then in your web browser of choice, go to the ip address of the host machine, and the port you set above.

In my case I went to:

https://192.168.10.26:8280

From there, you can go through the settings, setup new users, setup your preferred default search provider, and setup application shortcuts.

Enjoy!

Subscribe to Open Source is Awesome Show Notes

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe