Search
⌃K
Links

How to use Home Assistant over Meshnet

Learn how to configure Home Assistant using Docker on Windows, macOS, and Linux and reach it remotely using Meshnet.

Introduction

Nowadays, many homeowners use Internet of Things (IoT) devices. They can vary from a simple light bulb to a smart thermostat. As the number of these appliances grows, managing them individually may become challenging. To resolve this problem, various management software options are available, the most popular of which is Home Assistant.
Home Assistant is a free and open-source smart home control system. It allows you to add, control, and automate smart home devices. Home Assistant works locally, so you do not depend on third-party cloud solutions and do not have to worry about being unable to control your home appliances if the internet goes down.
On the other hand, you may want to control your devices while away on a business trip or family vacation. Since Home Assistant functions locally, it is not reachable from outside without port forwarding or a VPN connection to your home network. This is where Meshnet comes into play.
Meshnet establishes encrypted tunnels between your devices. This configuration allows you to swiftly and securely access your device from anywhere in the world.
This guide is designed to show you how to set up a Home Assistant instance in a Docker container and control it remotely using Meshnet.

Install Docker

To begin the configuration, you must have Docker installed on your device. You can find instructions for downloading and installing Docker on the Docker website:

Create a Home Assistant Docker container

With Docker installed, you can start creating Docker containers for various services, including Home Assistant.
For the purpose of this guide, Docker run will be used. If you prefer the Docker compose method, you can find instructions on the Home Assistant website.

Creating a volume

First, you need to create a specific Docker volume (directory) where the container’s files will be stored.

Method 1: Using Docker Desktop

This method utilizes the Docker Desktop application to create a volume for the Home Assistant Docker container.
  1. 1.
    Open the Docker Desktop app.
  2. 2.
    From the menu on the left, select Volumes.
    Docker Desktop application
  3. 3.
    Click the Create button in the upper-right corner.
  4. 4.
    Name it homeassistant_config and click Create.
    Name of the new Docker volume
  5. 5.
    The newly created volume will now be visible in the Volumes section.

Method 2: Using the command line

This method shows you how to create a volume for your Home Assistant Docker container via the command line.
  1. 1.
    Open Command Prompt (on Windows) or Terminal (on Linux or macOS).
  2. 2.
    Run the following command to create create a volume called homeassistant_config:
    docker volume create homeassistant_config
If the creation is successful, you will see the name of your volume in the command line window.

Creating a container

With the volume ready for Home Assistant, you can proceed to create the Docker container itself.
  1. 1.
    Open Command Prompt (on Windows) or Terminal (on Linux or macOS).
  2. 2.
    Execute the following docker run command, replacing <TimeZone> with your time zone:
    docker run -d --name homeassistant --privileged --restart=unless-stopped -p 8123:8123 -e TZ=<TimeZone> -v homeassistant_config:/config ghcr.io/home-assistant/home-assistant:stable
    Example
    Example docker run command to deploy a Home Assistant container
Docker will pull the Home Assistant image from Docker Hub and create the container.
If the creation is successful, you will see the full container ID of your Home Assistant container in the command line window.

Set up Home Assistant

Once the container is running, you can start using Home Assistant. By default, the Home Assistant service listens on port 8123, unless you've configured it differently.
  1. 1.
    Open your internet browser and visit your Home Assistant page. • If you are accessing Home Assistant from the host device directly, you can use the following URL: http://localhost:8123/
    • Otherwise, you must use the device’s local IP address instead of the localhost part.
    Home Assistant account creation screen
  2. 2.
    Create your Home Assistant account and finish the setup process.
Now, when you visit your Home Assistant page again, you will be prompted to log in to your account. Upon logging in, you will be taken to your Home Assistant dashboard, where you can configure your devices and services.

Access Home Assistant remotely

Your Home Assistant is now fully set up. With Meshnet enabled on the host device, the Home Assistant dashboard can be accessed remotely by other devices in your Meshnet.

Method 1: Using an internet browser

The easiest way to manage your Home Assistant remotely is via an internet browser.
  1. 1.
    Copy the Nord name of the device running Home Assistant from the NordVPN application.
  2. 2.
    Open your internet browser.
  3. 3.
    Paste the copied Nord name followed by :8123/ to the URL field and press Enter. Example secret.meerkat-andes.nord:8123/
    Home Assistant login page accessed by using the devices Nord name
  4. 4.
    Log into your Home Assistant account.
The Home Assistant dashboard will load, and you will have full control over it from your internet browser.
Home Assistant dashboard

Method 2: Using the Home Assistant companion application

You can also access the Home Assistant dashboard remotely through the companion app. However, it is currently available only on Android, macOS, and iOS.
Android
macOS
iOS
  1. 1.
    Download and install the Home Assistant app from the Google Play Store.
  2. 2.
    Copy the Nord name of the device running Home Assistant directly from the NordVPN application by tapping it.
    Nord name highlighted in the NordVPN application
  3. 3.
    Open Home Assistant and tap Continue.
  4. 4.
    Select Enter address manually.
  5. 5.
    In the Home assistant URL field, type http:// and paste the Nord name of the device running Home Assistant, followed by :8123. Tap Connect.
    Nord name entered in the Home Assistant application
  6. 6.
    Log into your Home Assistant account.
  7. 7.
    Choose the name of your device, select the notification preferences, and tap Continue.
Once the setup process is complete, you will have full access to your Home Assistant dashboard using the mobile companion application.
  1. 1.
    Download and install the Home Assistant application from the Apple App Store.
  2. 2.
    Copy the Nord name of the device running Home Assistant directly from the NordVPN app.
  3. 3.
    Open Home Assistant and click Continue.
  4. 4.
    Click Enter address manually.
  5. 5.
    Under Enter URL, type http:// and paste the Nord name of the device running Home Assistant followed by :8123. Click Connect.
    Nord name entered in the Home Assistant application
  6. 6.
    Log into your Home Assistant account and configure the permission and notification preferences.
Once the setup process is complete, you will have full access to your Home Assistant dashboard using the companion application.
  1. 1.
    Download and install the Home Assistant application from the Apple App Store.
  2. 2.
    Copy the Nord name of the device running Home Assistant directly from the NordVPN application by tapping it.
    Nord name highlighted in the NordVPN application
  3. 3.
    Open Home Assistant and tap Continue.
  4. 4.
    If you get a message asking for permission to find local devices, select OK.
    iOS system message regarding local connections
  5. 5.
    Tap Enter address manually.
  6. 6.
    Type http:// and paste the Nord name of the device running Home Assistant, followed by :8123. Tap Connect.
    Nord name entered in the Home Assistant application
  7. 7.
    Log into your Home Assistant account and configure the permission and notification preferences.
Once the setup process is complete, you will have full access to your Home Assistant dashboard using the mobile companion app.
You have successfully configured Home Assistant and can now control its dashboard remotely with the help of Meshnet.
© 2023 Nord Security. All Rights Reserved.