Gladys Assistant
How to run Gladys Assistant on any Linux device (Raspberry Pi, Ubuntu VM, NVIDIA Jetson, etc)
In this short tutorial we will demonstrate how to install a modern and lightweight home assistant on your device. Gladys is a privacy-first, open-source home assistant.
With this setup you will enjoy having:
  • Remote HTTPS access to Gladys web interface
  • Remote SSH access
  • Ability to monitor CPU/Memory utilisation
  • OTA (over the air) updates

Install Synpse agent

First, you will need to install Synpse agent on your device. Please follow one of the suggested installation methods from here. In most cases it will be just running the installation command:
Generated agent installation command

Deploy Gladys Assistant

Once you have your device connected to Synpse. Create a new application:
1
name: gladys
2
scheduling:
3
type: Conditional
4
selectors:
5
type: rpi # Update to your device selector
6
spec:
7
containers:
8
- name: gladys
9
image: gladysassistant/gladys:v4
10
networkMode: host # Host network as it needs to scan it for devices
11
privileged: true
12
volumes:
13
- /data/gladysassistant:/data/gladysassistant
14
- /dev:/dev
15
- /run/udev:/run/udev
16
- /var/run/docker.sock:/var/run/docker.sock
17
env:
18
- name: NODE_ENV
19
value: production
20
- name: SERVER_PORT
21
value: "8080"
22
- name: TZ
23
value: Europe/London # Change to your timezone
24
- name: SQLITE_FILE_PATH
25
value: /data/gladysassistant/gladys-production.db
26
​
Copied!
Data on the device will be stored in the /data/gladysassistant/ directory. This will ensure that after updating the Gladys Assistant Docker image your configuration doesn't disappear.

Getting public HTTPS URL to Gladys

To connect to Gladys you can either access it directly on http://<device IP>:8080 or you can expose it to the internet by setting port 8080 in the device details and click on the public endpoint button:
Public URL for Gladys
After enabling, you should see your device URL in a format similar to https://xxx.synpse.cloud . Open it and complete the initial configuration steps (or restore it from the previous backup).
Once done, you should have your username/password based authentication on the public URL:
Gladys login screen on the public endpoint URL

SSH access

Through Synpse you can always using web interface to open an SSH terminal to your device. Use this when debugging any issues or downloading/uploading backups from your device:

FAQ

Q: Gladys Assistant container won't start, what do I do?

A: There are a number of things you should check:
  1. 1.
    Is the device in the Devices page online? (should be a green dot next to the 'online' status)
  2. 2.
    Does the label on the device (for example 'type: rpi') match the selector in the application?
  3. 3.
    Is the container image being pulled successfully? DockerHub introduced rate limit for image pulls so you might need to enter your username/password. Check out application specification section of the docs on how to setup Docker registry authentication.
  4. 4.
    Check Gladys logs. To do that, the easiest way is to go your application, then click on Allocations and then click on "logs".

Q: Gladys was working but I cannot reach it anymore

A: Check whether device is online in the Devices page. If it's offline, the device might not have power or the internet connection is down.