Users can format comments by using Markdown. Isso has spam protection and an admin panel to administrate comments.
For this guide you should be familiar with the basic concepts of
All relevant legal information can be found here
We’re using Python in the version 3.6.8:
[isabell@stardust ~]$ python3 -V Python 3.6.8 [isabell@stardust ~]$
The host domain and a subdomain for isso need to be setup:
[isabell@stardust ~]$ uberspace web domain list isabell.uber.space comments.isabell.uber.space [isabell@stardust ~]$
Install Isso and create a folder for the database and config file:
[isabell@stardust ~]$ pip3.6 install isso --user Collecting isso [...] Successfully installed Jinja2-2.11.1 MarkupSafe-1.1.1 bleach-3.1.4 cffi-1.14.0 html5lib-1.0.1 isso-0.12.2 itsdangerous-1.1.0 misaka-2.1.1 pycparser-2.20 six-1.14.0 webencodings-0.5.1 werkzeug-1.0.1 [isabell@stardust ~]$ mkdir ~/isso [isabell@stardust ~]$
Create and open the file
~/isso/user.cfg and configure it according to your needs. Check out the Isso server-manual for explanations of all possibilities. Replace
<username> with your Uberspace username and
<domain> with your domain:
[general] dbpath = /home/isabell/<username>/comments.db host = https://<domain>/ [server] listen = http://0.0.0.0:1234/
The minimum settings are a link to the sqlite database as well as the host domain and the ip of the local host. The host domain is from where you want to access the isso server - be aware that the comment domain has to be a sub domain of the main domain (read about CORS for more information). The port can be any free port of your uberspace (you have chosen that port during the web backend configuration, mentioned above).
Currently Isso has an issue with the latest version of the module
werkzeug. If the code from above fails with the error message
"ImportError: cannot import name 'SharedDataMiddleware'" you can use the following workaround until the issue gets fixed.
uninstall current version of
[isabell@stardust ~]$ pip3 uninstall werkzeug Uninstalling Werkzeug-1.0.1: [...] Successfully uninstalled Werkzeug-1.0.1 [isabell@stardust ~]$
install a compatible version of
[isabell@stardust ~]$ pip3 install Werkzeug==0.16.1 --user Collecting Werkzeug==0.16.1 [...] Successfully installed Werkzeug-0.16.1 [isabell@stardust ~]$
isso -c ~/isso/user.cfg run to let Isso check and load the configurations. If everything is set up correctly you should see the following output:
[isabell@stardust ~]$ isso -c ~/isso/user.cfg run 2020-04-04 13:27:56,086 INFO: connected to https://isabell.uber.space/ [isabell@stardust ~]$
If you get any error message your configuration settings are not correct.
~/etc/services.d/isso.ini with the following content:
[program:isso] command = %(ENV_HOME)s/.local/bin/isso -c %(ENV_HOME)s/isso/user.cfg run autostart = true autorestart = true
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 ~]$
If it’s not in state RUNNING, check your configuration.
Configure web server¶
Isso is running on port 1234, as defined in
~/isso/user.cfg. Be aware that the comment domain has to be a subdomain of the main domain (read about CORS for more information). Replace
comments.isabell.uber.space with your own subdomain for isso that you configured in the first step.
[isabell@stardust ~]$ uberspace web backend set comments.isabell.uber.space --http --port <port> Set backend for comments.isabell.uber.space 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 can include Isso to your website by following the client-manual.
If you enabled the admin functionality inside the configuration you can access the admin panel by adding the path