heimdall

DIY HOME SERVER 2021 – Software – HEIMDALL

1. DIY HOME SERVER - HEIMDALL prepare Container

This guide is my implementation of installing the Heimdall Aplication Dashboard.

When creating a home lab server, after a while you gather a lot of shortcuts to application web interfaces. Of course you could create favorites in your browser or shortcuts on your computer desktop. But you could also use an application dashboard. Let’s install Heimdall.

A common way to install applications in Proxmox is to use Docker containers. But I like to do things a bit different. Let’s install Heimdall in an Ubuntu LXC.

In Proxmox, select local (storage) → CT Templates → Templates.

In the dropdown, select the latest Ubuntu LTS (.04) template and click the Download button.

Click the Create CT button to create a new LXC.

On the General tab, specify the container name an set the password for the root user.

Click Next.

On the Template tab, select the latest Ubuntu CT Template.

Click Next.

On the Root Disk tab, set a 4 GB Disk size.

Click Next.

On the CPU tab, there’s nothing to change.

Click Next.

On the Memory tab, there’s nothing to change.

Click Next.

On the Network tab, set the static IP address and specify the Gateway.

Click Next.

On the DNS tab, there’s nothing to change.

Click Next.

On the Confirm tab, check the Start after created option.

Click Next.

The container will be installed.

Select the container and click Options → Start at boot → Edit.

Set the Start at boot option and click OK.

2. DIY HOME SERVER - HEIMDALL Installation

Start the newly created Heimdall Container.

Select the Console.

Log in as user root with the password set during the container creation.

Enter the following command sequences :

apt update && apt upgrade -y
apt-get -y install apache2
apt-get -y install php
apt-get -y install libapache2-mod-php
apt-get -y install sqlite
apt-get -y install php-mbstring php-xml php-common php-sqlite3 php-zip
a2enmod rewrite
service apache2 restart
apt install git -y
git clone https://github.com/linuxserver/Heimdall.git /opt/heimdall
chown -R www-data:www-data /opt/heimdall/
chmod -R 777 /opt/heimdall/
rm -R /var/www/html
ln -s /opt/heimdall/public/ /var/www/html
nano /etc/apache2/sites-enabled/000-default.conf

Replace the content by : 

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/
        DirectoryIndex index.php index.html default.php welcome.php
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        <Directory /var/www/html/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride all
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>
cd /opt/heimdall/
php artisan key:generate
chmod -R 777 /opt/heimdall/
service apache2 restart

Now open your browser and go to the IP addres specified during the Heimdall container setup.

You can now start using Heimdall.

In the next episode, we’ll install Windows 10 Professional as a virtual machine and passthrough a graphics card.

8 Comments

  1. Attempting install on 22.04.3
    Any help is appreciated!

    Following your guide but do not find this:
    Go to line 135 and comment out the else branch.
    Here is what I have:
    * {@inheritdoc}
    */
    protected function parse()
    {
    foreach ($this->parameters as $key => $value) {
    if (‘–‘ === $key) {
    return;
    }
    if (str_starts_with($key, ‘–‘)) {
    $this->addLongOption(substr($key, 2), $value);
    } elseif (str_starts_with($key, ‘-‘)) {
    $this->addShortOption(substr($key, 1), $value);
    } else {
    $this->addArgument($key, $value);
    }
    }
    }

    Also, the site loads but when trying to update the applicaitons list – nothing is updated.

    • That correction was needed in a previous version and not needed anymore. I’ll remove it from the article.

      Thanks.

      Marc

  2. I used 22.04 for the container and it seems to work. It installed PHP 8.1.2 during the setup process.

  3. I tried the install with no apt update or upgrade, but still receive a PHP error when running the “php artisan key:generate” command. I am using an ubuntu 20.04 lxc container in ProxMox. Have you all had any success recently?

  4. I second what Nobody said. But I also had to remove all of php and manually install php7.4 very latest version(>7.4.15) or I also got composer errors. After that, I could follow the rest of the steps and it installed successfully. Not sure if it will work on 22.04 but definitely doesn’t like php8.0.

  5. If you are trying to install Heimdall in an LXC container on Proxmox, make sure you select Ubuntu 20.04 as your CT template and skip the first command in this guide (Do not run “apt update && apt upgrade -y”).

      • Heimdall usually runs in a docker container which automatically uses PHP 7.4. Newer versions create an error when using “php artisan key:generate”. You can test it for yourself if you want, I am not exactly sure what the root cause is.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.