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
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
Once you have your device connected to Synpse. Create a new application:
type: rpi # Update to your device selector
- name: gladys
networkMode: host # Host network as it needs to scan it for devices
- name: NODE_ENV
- name: SERVER_PORT
- name: TZ
value: Europe/London # Change to your timezone
- name: SQLITE_FILE_PATH
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.
To connect to Gladys you can either access it directly on
http://<device IP>:8080or you can expose it to the internet by setting port
8080in 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
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:
A: There are a number of things you should check:
- 1.Is the device in the Devices page online? (should be a green dot next to the 'online' status)
- 2.Does the label on the device (for example 'type: rpi') match the selector in the application?
- 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.Check Gladys logs. To do that, the easiest way is to go your application, then click on Allocations and then click on "logs".
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.