Home and tools guide

Home Assistant, from anywhere

The app you most want away from home, and the one you least want open to the internet.

About 10 minutes·Works on the free plan

You'll need

  • Home Assistant running on a machine at home
  • Docker
  • A free Seawise.io account (Admin plan for the Companion app)

Step by step

Everything happens in your browser except step 1.

1

Run the Seawise.io container

Run this on the machine where Home Assistant runs. The container connects out to Seawise.io, so you don't open any ports on your router.

On Docker Desktop for Mac or Windows, replace --network host with -p 8082:8082.

your server
$ docker run -d --name seawise \
  --restart unless-stopped \
  --network host \
  -v seawise-data:/config \
  ghcr.io/seawise-io/seawise-client:latest

✓ Container started

2

Set a password

On a computer at home, open http://your-server-ip:8082 and create a password for the container's page.

Do this straight after starting the container. Whoever opens this page first sets the password.
3

Connect it to your account

Give the server a name, click Connect, and approve it in the seawise.io tab that opens. Sign up for free there if you haven't yet.

4

Add Home Assistant

Fill in the name, the address and the port Home Assistant uses (8123 by default), then click Add.

Which address? With --network host, use localhost. On Docker Desktop, use host.docker.internal. If Home Assistant runs on another machine, use its local IP, like 192.168.1.20.
5

Open it from anywhere

Home Assistant now shows on your Servers page at seawise.io. Click it from any browser, on any network, and you're in.

6

Share it

Go to Portals, create one (say, Family), and add Home Assistant to it. Then open its sharing settings and add the email of everyone who should get in.

Skip this step if Home Assistant is just for you.

7

What they see

Send them the portal link. They sign in with the email you added, using Google, GitHub or an email link, and tap Home Assistant. Nothing to install, on any phone, tablet or laptop.

Set up Home Assistant for remote use

01

Set the Internet URL

Go to Settings > System > Network and, under Home Assistant URL, set Internet to https://your-app.seawise.dev. Home Assistant hands this address to devices that fetch media from it, like text-to-speech on a speaker.

02

Create a login per person

In Settings > People, add a person and turn on Allow login. Leave Administrator off for family, and don't tick Local access only for anyone who needs it away from home.

03

Turn on two-factor

Each user can open their profile, go to Security, and enable the Authenticator app under Multi-factor authentication modules. Worth doing before you make anything public.

Trust the Seawise.io connection

Home Assistant blocks proxied requests unless it knows the proxy. Add this to configuration.yaml and restart. If Home Assistant runs in Docker bridge mode, use the IP shown in the log warning instead of 127.0.0.1.

configuration.yaml
http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 127.0.0.1

If something's not working

Home Assistant shows as offline+

The Seawise.io container can't reach port 8123. Run curl http://localhost:8123 on the server; Home Assistant's Docker install uses host networking, so localhost should work.

400: Bad Request+

Home Assistant rejected the proxy. Add the http block above to configuration.yaml and restart. The log line "A request from a reverse proxy was received from" shows which IP to trust.

The Companion app won't connect+

The Companion app can't complete the Seawise.io browser sign-in. Make the app public on the Admin plan, then enter your Seawise.io address in the app and log in with your Home Assistant account.

Locked out after a few wrong passwords+

If you set ip_ban_enabled, a ban can hit the proxy address and block everyone. Fix trusted_proxies first so bans land on the real visitor IP, then remove the entry from ip_bans.yaml and restart.

Try it on your own server.

Free plan, no card needed.