From 5515ed66bba63016af3c7d0661b8d7b08f89897d Mon Sep 17 00:00:00 2001 From: bmn001 <4766836+bmn001@users.noreply.github.com> Date: Thu, 2 Sep 2021 16:06:28 -0700 Subject: [PATCH] Added docs on running Trilium as a service w/systemd. --- Packaged-server-installation.md | 42 ++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/Packaged-server-installation.md b/Packaged-server-installation.md index 19eb176..5f81560 100644 --- a/Packaged-server-installation.md +++ b/Packaged-server-installation.md @@ -10,7 +10,47 @@ trilium-linux-x64-server-[VERSION].xz](https://github.com/zadam/trilium/releases * `./trilium.sh` * you can open the browser and open http://[your-server-hostname]:8080 and you should see Trilium initialization page -The problem with above steps is that once you close the SSH connection, trilium process is terminated. To avoid that, kill it (with e.g. `CTRL-C`) and run again like this: `nohup ./trilium &` +The problem with above steps is that once you close the SSH connection, the Trilium process is terminated. To avoid that, you have two options: +* Kill it (with e.g. `CTRL-C`) and run again like this: `nohup ./trilium &`. +* Configure systemd to automatically run Trilium in the background on every boot + +## Configure Trilium to auto-run on boot with systemd +* After downloading, extract and move Trilium: + +``` +tar -xvf trilium-linux-x64-server-[VERSION].tar.xz +sudo mv trilium-linux-x64-server /opt/trilium +``` +* Create the service: +``` +sudo nano /etc/systemd/system/trilium.service +``` +* Paste this into the file (replace the user and group as needed): +``` +[Unit] +Description=Trilium Daemon +After=syslog.target network.target + +[Service] +User=xxx +Group=xxx +Type=simple +ExecStart=/opt/trilium/trilium.sh +WorkingDirectory=/opt/trilium/ + +TimeoutStopSec=20 +KillMode=process +Restart=always + +[Install] +WantedBy=multi-user.target +``` +* Save the file (CTRL-S) and exit (CTRL-X) +* Enable and launch the service: +``` +sudo systemctl enable --now -q trilium +``` +* You can now open a browser to http://[your-server-hostname]:8080 and you should see the Trilium initialization page. ## Common issues