The source solution remains unusually current. A community responder pointed directly to Homey's official Linux instructions and used a Docker container with host networking, privileged mode, automatic restart, and a persistent ~/.homey-shs directory. The original poster replied that the installation worked.
Homey's current official support pages still use the same container architecture and now also provide a Docker Compose example. On ZimaOS, Compose is usually easier to document and reproduce than a one-off docker run command.
Check Homey's Current Minimum Requirements
Homey Self-Hosted Server currently requires:
- Intel/AMD or Arm 64-bit CPU;
- at least 1 GB available RAM;
- at least 1 GB available storage;
- a dedicated LAN IP address/path that clients can reach.
ZimaOS already provides Docker, so do not run Homey's generic “install Docker” script on the host.
The Source Used Homey's Official Docker Run Architecture
The working source command used:
-
--network host; -
--privileged; -
--restart unless-stopped; - a persistent host folder mapped to
/homey/user/; -
ghcr.io/athombv/homey-shs.
The original poster confirmed the server installed and worked.
Current Homey Documentation Also Provides Docker Compose
Homey's maintained Compose example uses the same design:
services:
homey-shs:
image: ghcr.io/athombv/homey-shs:latest
container_name: homey-shs
restart: unless-stopped
network_mode: host
privileged: true
volumes:
- ~/.homey-shs:/homey/user
See Homey's current Self-Hosted Server Compose workflow.
Use a Deliberate Persistent Path on ZimaOS
The upstream ~/.homey-shs path is valid in a general Linux shell, but on ZimaOS it is cleaner to choose an explicit writable storage location such as a dedicated AppData folder under the storage space you actually back up.
Map that host folder to /homey/user and document it before future reinstalls.
Host Networking Is Intentional
Homey's official Compose uses network_mode: host, which gives the container direct access to the host network namespace instead of ordinary Docker port mapping.
This helps LAN discovery and device communication but also reduces network isolation. Review what services the container opens on the host.
Privileged Mode Is a Significant Permission Grant
The official Homey container runs privileged. That gives the container much broader host/device capabilities than a normal App Store service.
Use only the official image/source and keep it updated. Do not add unrelated software to the same privileged container.
Know the Homey Service Ports
Homey's current documentation lists default server/bridge ports including 4859-4862. Host networking means those listeners appear directly on the ZimaOS host.
If a host firewall such as ZFW is used, make sure the required LAN ports are allowed deliberately.
Finish Setup in the Homey Mobile App
After the container is running, open Homey on iOS or Android, add a new Homey, and select Self-Hosted Server. If automatic discovery fails, current Homey configuration allows HOMEY_LOCAL_ADDRESS to define the host LAN IPv4 address.
Update by Pulling and Recreating the Container
Homey's current instructions update the image and recreate the container while keeping the persistent host folder. The data survives because it lives outside the disposable container.
Back Up the Homey Persistent Folder
Homey explicitly says to back up the files and folders stored in the chosen .homey-shs path. That backup is more important than preserving the container itself.
Homey on ZimaOS FAQ
Did the source user confirm Homey worked?
Yes. They said the suggested Docker installation was working well.
Should ZimaOS users install Docker with Homey's curl script?
No. ZimaOS already includes Docker; use the container/Compose portion only.
Why persist /homey/user outside the container?
That directory contains Homey's durable state and allows the container to be updated or recreated without losing configuration.
