Commento¶
Commento is an open source, fast, privacy-focused commenting platform written in golang.
Prerequisites¶
Install and configure a Postgresql server.
Installation¶
Since Commento provides pre-compiled binaries, we can use those:
Warning
Check the releases page before you continue.
[isabell@stardust ~]$ mkdir commento
[isabell@stardust ~]$ cd commento
[isabell@stardust commento]$ wget https://commento-release.s3.amazonaws.com/commento-linux-amd64-v1.7.0.tar.gz
[isabell@stardust commento]$
Extract the tar archive:
[isabell@stardust commento]$ tar -xf commento-linux-amd64-v1.7.0.tar.gz
[isabell@stardust commento]$
We do not need the tarball any longer, so delete it:
[isabell@stardust commento]$ rm commento-linux-amd64-v1.7.0.tar.gz
[isabell@stardust commento]$
You will be left with a single executable binary, called commento
as well as supporting files.
Create Commento Start Script¶
Make sure to have your PostgreSQL credentials ready. You will need an existing database
, port
, username
and password
.
Create ~/bin/commento_daemon
and add the following content:
Warning
Replace all placeholders <*>
with your values!
#!/bin/sh
set -ue
export COMMENTO_ORIGIN=https://isabell.uber.space
export COMMENTO_PORT=31380
export COMMENTO_BIND_ADDRESS="0.0.0.0"
export COMMENTO_POSTGRES=postgres://<username>:<password>@<host>:<port>/<database>?sslmode=disable
exec ~/commento/commento
Make your script executable:
[isabell@stardust ~]$ chmod +x ~/bin/commento_daemon
[isabell@stardust ~]$
Setup Supervisor¶
Create ~/etc/services.d/commento.ini
with the following content:
[program:commento]
command=%(ENV_HOME)s/bin/commento_daemon
After creating the configuration, tell supervisord to refresh its configuration and start the service:
[isabell@stardust ~]$ supervisorctl reread
SERVICE: available
[isabell@stardust ~]$ supervisorctl update
SERVICE: added process group
[isabell@stardust ~]$ supervisorctl status
SERVICE RUNNING pid 26020, uptime 0:03:14
[isabell@stardust ~]$
To stop and start the daemon to perform maintenance tasks, you can use supervisorctl stop
and supervisorctl start
, respectively:
[isabell@stardust ~]$ supervisorctl stop commento
commento: stopped
[isabell@stardust ~]$
[isabell@stardust ~]$ supervisorctl start commento
commento: started
[isabell@stardust ~]$
Check out the supervisord manual for further details.
Configure Web Backend¶
Note
Commento is running on port 31380.
To make the application accessible from the outside, configure a web backend:
[isabell@stardust ~]$ uberspace web backend set / --http --port <port>
Set backend for / to port <port>; please make sure something is listening!
You can always check the status of your backend using "uberspace web backend list".
[isabell@stardust ~]$
Now you should be able to access Commento at your defined domain in your browser.
Additional Notes¶
If you are the only user of the Commento instance, it would be advisable to disable the new owner sign up, after you registered your site.
Add this to your commento_daemon
above the /home/isabell/commento/commento
call:
Note
This does not impact the commenting users of your site!
export COMMENTO_FORBID_NEW_OWNERS=true
Then restart Commento:
[isabell@stardust ~]$ supervisorctl restart commento
commento: stopped
commento: started
[isabell@stardust ~]$
The form to sign up will still be visible, but cannot be submitted.
—
Tested with Commento 1.7.0 / Uberspace 7.3.6.1
Written by: hendrikmaus <https://github.com/hendrikmaus>