A checkout on the server
The simplest way: the server holds a Git checkout of your project and runs it with the same compose.yaml you use
during development. You need Git, Docker with Compose, and make on the server.
Set it up
Section titled “Set it up”git clone <your repository> my-homecd my-homecp .env.example .env # fill it in as on your machine; STEWART_CONTROL__TOKEN=$(openssl rand -hex 16)make upmake up starts Stewart and Valkey in the background. On its first start, the container installs your
dependencies, which takes a minute. Then:
make logs # follow the log; Ctrl-C stops following, not Stewartmake status # how the apps are doingBoth containers restart on their own after a crash or a reboot.
Update it
Section titled “Update it”Push your changes from your machine, then on the server:
make deploymake deploy runs git pull and restarts Stewart. When composer.lock changed, the container installs the new
dependencies before it starts.
Stop it
Section titled “Stop it”make downValkey keeps its data in a Docker volume, so stopping and starting loses nothing.
Common problems
Section titled “Common problems”make deploy refuses to pull. The server’s checkout has local changes. Run git status there and discard or
commit them.
Stewart cannot connect after the move. The server reaches Home Assistant under another address than your
machine. Fix STEWART_HOME_ASSISTANT__URL in the server’s .env.