Skip to content

Release 2.0.0

Choose a tag to compare

@github-actions github-actions released this 21 Oct 20:41
6cec2a3

NetIgnite 2.0.0 is a complete rewrite of the server, with new agents for the ESP32
(Agent-ESP32 2.0.0) and for
Linux (Agent-Linux 1.0.0).

Warning

Running v1 on the latest image? ghcr.io/netignite-project/server:latest is now v2. A v1
server that pulls it (by hand or with an auto-updater like Watchtower) starts v2 with an empty
database next to the v1 one. Nothing is lost: your users, agents and devices are still in
data/db.sqlite until you import them, and the server log says so on every start. To stay on v1
for now, pin ghcr.io/netignite-project/server:0.1.3.

What's new

  • Wake-on-LAN through an ESP32 or Linux agent in the device's network. Agents connect out to
    the server, so no port forwarding to your devices is needed.
  • Status checks every 20 seconds by MAC address (IPv6 link-local), IPv4, IPv6, TCP port, SSH
    port or the Linux agent on the device.
  • Shutdown and reboot through the Linux agent on the device (recommended), or over SSH with a
    login restricted to exactly these two commands.
  • Sharing: share devices with other users as viewer, operator or manager.
  • ESP32 web installer: flash the agent from Chrome, Edge or Firefox 151+ over HTTPS. Wi-Fi is
    entered in the browser and goes to the board only.
  • Firmware updates over the network for ESP32 agents with automatic rollback, and a console
    with the live log and settings.
  • Linux agent installer: one command from the agent's page.
  • Installable as an app (PWA) on phones, tablets and computers.
  • REST API with API keys, and an OpenAPI reference at /api/docs/v1.
  • Accounts: the first admin sets a password through a one-time link; admins create users, and
    public sign-up can be turned on.

Upgrading from v1 (0.1.x)

Follow the upgrade guide. In short:

  1. Back up /opt/netignite.
  2. Start 2.0.0 with the same volumes and set NETIGNITE_APP_URL to the address you open the
    dashboard at.
  3. Import your v1 data (add --dry-run to try it first):
    docker exec netignite-server bun /opt/netignite/app/.output/import-v1.mjs --from /opt/netignite/data/db.sqlite
  4. Set up the agents again: v1 agents can't connect to v2. Install the ESP32 firmware 2.0.0 once
    over USB with the web installer, and replace v1 "server" agents with the Linux agent.

The port (18232), the image name and the volumes (/opt/netignite/data, /opt/netignite/config)
stay the same. Back up config/secrets.key together with the database: it encrypts the stored SSH
logins.

Install

ghcr.io/netignite-project/server:2.0.0

The image is built for linux/amd64 and signed with cosign. See the
installation guide for Docker Compose,
docker run and running from source, and Configuration
for all NETIGNITE_* settings. app.tar.gz contains the built server and the database migrations.

Changes since 2.0.0-beta.2

  • On start, the server warns when it finds a v1 database (data/db.sqlite) that hasn't been
    imported, and shows the import command.
  • The Linux agent install script installs the newest stable Agent-Linux release, and a pre-release
    only while there is none.

Full changelog: CHANGELOG.md