Core Installation
Install the Linknesis Core on a Linux server with Docker and Docker Compose.
Requirements
- Linux server (Debian 13 recommended)
- Docker Engine and Docker Compose
- The ports you choose open to the internet. Defaults are 80 (HTTP redirect), 443 (Web GUI HTTPS), 4443 (Probe WSS), and 4480 (Core API health checks and Probe update downloads).
- A DNS name pointing to the server (e.g.
core.linknesis.com) - required for Let's Encrypt and public Probes; optional if you access the GUI by IP address and use self-signed certificates or custom uploaded certificates.
Install steps
- Run the installer with the default ports:
curl -fsSL https://linknesis.com/install_core.sh | sudo bashThis uses the default ports: 443 for the Web GUI HTTPS, 4443 for the Probe WebSocket, and 4480 for the direct Core API health checks. The installer automatically completes the initial setup, generates randomized MongoDB credentials, and prints a SAVE THIS INFORMATION report at the end.
- Or run the installer with your desired options:
curl -fsSL https://linknesis.com/install_core.sh | sudo bash -s -- --web-port 8080 --wss-port 4443 --api-port 4480--web-portsets the Web GUI HTTPS port.--wss-portis the port Probes connect to for WebSocket.--api-portis the direct Core API port used for local health checks and for Probe update downloads; the GUI reaches the API through Nginx on the HTTPS port. Probes download updates directly from this port.--http-port PORTsets the port used for the ACME HTTP-01 challenge (default 80) - only needed to avoid a local conflict if something else on the host is already using port 80. A real Let's Encrypt certificate via--fqdnstill requires port 80 itself reachable from the internet, since the certificate authority only ever validates HTTP-01 against the standard port, regardless of this setting.Additional options:
--admin-password PASSsets the Core admin password (auto-generated if omitted),--fqdn NAMEpre-configures the domain used for Let's Encrypt, and--channel stable|betaselects the update channel (defaultstable; thebetachannel runs the Core with debug logging). - Save the report printed at the end of the installation (see Installation report below).
- Open
https://your-domainin a browser and log in with theadminpassword shown in the report.
Installation report
At the end of the installation, the installer prints a SAVE THIS INFORMATION report. The report includes:
- The ports used (Web GUI HTTPS, Probe WSS, Core API).
- The Core
adminpassword and the MongoDBadminpassword. docker logs -fcommands for the Core, Nginx, and MongoDB containers.- The command to open a MongoDB shell.
- The command to enter the running Core container.
- A ready-to-run Linux Probe install command with the Core host, WSS port, and PSK hash.
- A pointer to the Windows installer download in the Web GUI.
- Updater inspection commands and the installation directory.
First login
The installer automatically completes the initial Core setup and sets the admin password shown in the installation report. Open the Web GUI and log in with:
- Username:
admin - Password: the Core admin password from the report
The JWT secret is persisted in MongoDB so sessions survive container restarts.
TLS certificates
On first boot the Core uses self-signed certificates. After you set the FQDN in Settings, Certbot can request a real Let's Encrypt certificate automatically. You may also upload custom certificates on the /cert page.
If port 80 is not available for Linknesis on this server, this Core cannot obtain a Let's Encrypt certificate. Linknesis validates domain ownership via the HTTP-01 challenge, which always uses the standard port 80 regardless of any --http-port chosen at install time; DNS-01 validation, which does not require port 80, is not currently supported.
The Probe WebSocket channel (port 4443) uses a dedicated self-signed certificate generated by the Core. It is independent of the GUI certificate.
Core auto-update
The installer enables automatic checks for new Core versions out of the box, with a safe rollback if an update fails. See Core Update for how it works and how to trigger or manage updates manually.
Post-install checks
- Verify containers are running:
docker compose ps - View Core logs:
docker logs -f linknesis-core - Access the MongoDB shell:
docker exec -it linknesis-db mongosh -u admin -p '<MONGO_ROOT_PASSWORD>' --authenticationDatabase admin(the password is in the installation report, and in/opt/linknesis/.envasMONGO_ROOT_PASSWORD) - Check Probe connectivity on the configured WSS port (default 4443).