github doctor-io/homeio v1.10.2
Homeio v1.10.2

5 hours ago

Homeio 1.10.2 turns the Terminal into a real shell on your server and lets you name, decorate and link the containers you started yourself. Full notes are in CHANGELOG.md; the release post is at homeio.app/homeio-1-10-2-terminal-release.

New

  • A real terminal (#58). The Terminal window opens a full login shell on the server, the same one an SSH login gives: root on a script install, so git, apt, nano, top and anything else that runs in a terminal works, with colours, resizing, clickable links and scrollback. Copy and paste are Ctrl+Shift+C / Ctrl+Shift+V. Open in Terminal on an app opens a shell inside its container. When the shell exits, Enter starts a new one. Where the shell cannot run (the Docker image, demo mode) the window keeps the previous command terminal.
  • Name, icon and link for containers Homeio did not deploy (#55). App Settings in their right-click menu sets a display name, an icon URL (with a preview) and the URL that Open Dashboard and Copy URL use. Settings are kept by container name, so they survive the container being recreated; Reset brings back the defaults.

Fixed

  • The terminal WebSocket could never open a shell: node-pty was loaded through a default import it does not have, and on script installs nginx dropped the WebSocket upgrade. /api/terminal now has its own nginx location.

Security

  • The terminal WebSocket only accepts Homeio's own pages. A handshake whose Origin does not match the host it came in on (another site, or another app on the same IP at a different port) is refused, even with a valid session cookie.

Upgrading

Script installs:

curl -fsSL https://raw.githubusercontent.com/doctor-io/homeio/main/scripts/update.sh | sudo bash

Update now in Settings also installs 1.10.2, but it runs the update script already on the server, which writes the old nginx settings: the Terminal opens a shell only after the next update, or after running the command above once.

Docker installs:

docker compose pull && docker compose up -d

The database gets one new table (container_customizations), created on start.

Closes #55
Closes #58

Don't miss a new homeio release

NewReleases is sending notifications on new releases.