Here we document one possible way to set up Community Solid Server (CSS), including https and default app — Mashlib.
This instruction is for CSS v7 — latest version at the time of writing.
Steps:
- Own a domain name and point it to the server's IP address
- Create a dedicated Linux user
- Prepare project folder structure
- Install Community Solid Server
- Set up nginx, and certificates with LetsEncrypt
- CSS Configuration
- Run CSS with pm2
- Set up Mashlib
- Backup data regularly with cron
You'll need:
- a domain name
- a server with Debian 11 and static IP address, VPS from a server provider will do
- Node and npm installed, maybe also NVM (Node Version Manager)
- pm2 installed
- nginx installed
- ftp server to backup the data
We mark placeholders [placeholder]
. You should always replace them with your own string. For example replace [port]
with 3456
. Whatever you choose instead of the placeholders, keep it consistent across this whole instruction.
[user]
- linux user to run the CSS server[projectname]
- folder name in[user]
's home environment where we keep everything[port]
- port on which the CSS will run locally; no other application should run on the same port; choose 4 numbers like3456
[your.domain]
- the domain on which the server is going to run
You need to run some commands as root
, and others as regular [user]
. Make sure you always run them as the correct user. It matters a lot! You may even want to open 2 ssh connections to your server — one as [user]
, the other as [root]
.
Look for # run as [user]
or # run as root
at the beginning of the script snippets.