Auparavant, j'utilisais Disqus comme système de commentaires pour mon blog. Le problème, c'est que Disqus fait énormément de requêtes et n'est pas open-source.

Il existe des alternatives : Discourse,  Isso, Commento pour les versions que vous pouvez héberger vous-même et just-comment pour une version SaaS et payante.

J'ai essayé Isso qui s'installe très facilement, mais j'ai décidé de tenter ma chance avec Commento qui semble être mis à jour plus régulièrement

J'ai choisi d'installer la version à partir des sources pour avoir la dernière version.

  • Installation des prérequis

sudo apt update
sudo apt install make cmdtest postgresql postgresql-contrib
sudo apt-get remove golang-go

  • Installation de postgreql

sudo systemctl enable postgresql

adduser commento

sudo -i -u commento

createuser --interactive

createdb commento

  • Je désinstalle Go-lang pour installer la dernière version.

A télécharger sur le site de Golang : https://golang.org/dl/

cd /tmp
wget https://dl.google.com/go/go1.13.5.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.13.5.linux-amd64.tar.gz

Ajouter les variables d'environnement

sudo vi ~/.bash_aliases

et ajouter les lignes suivantes

export GOROOT="/usr/local/go"
export PATH=$PATH:$GOROOT/bin

  • Installation des sources

cd /opt
git clone https://gitlab.com/commento/commento.git
cd commento
make prod

cd /opt
sudo ln -s /opt/commento/build/prod commento-server

  • Créer le fichier de démarrage

sudo vi /etc/systemd/system/commento.service

contenant le texte suivant :

[Unit]
Description=Commento daemon service
After=network.target postgresql.service

[Service]
Type=simple
ExecStart=/opt/commento-server/commento
Environment=COMMENTO_ORIGIN=https://commento.YOURBLOG.com
Environment=COMMENTO_PORT=8080
Environment=COMMENTO_POSTGRES=postgres://commento:commento@127.0.0.1:5432/commento?sslmode=disable

# Uncomment after setting up SMTP as specified below.
# Environment=COMMENTO_SMTP_HOST=smtp.mailgun.org
# Environment=COMMENTO_SMTP_USERNAME=YOUR_SMTP_USERNAME_HERE
# Environment=COMMENTO_SMTP_PASSWORD=YOUR_SMTP_PASSWORD_HERE
# Environment=COMMENTO_SMTP_PORT=587
# Environment=COMMENTO_SMTP_FROM_ADDRESS=no-reply@YOURBLOG.com

# Uncomment after creating your first user on commento.YOURBLOG.com
# Environment=COMMENTO_FORBID_NEW_OWNERS=true

# Uncomment after creating Akismet acc and grabbing API Key. Paste it below.
# Environment=COMMENTO_AKISMET_KEY=YOUR_API_KEY_HERE
[Install]
WantedBy=multi-user.target

  • Démarrage

sudo chmod 644 /etc/systemd/system/commento.service
sudo systemctl start commento
sudo systemctl enable commento

  • Création de la configuration nginx

sudo vi /etc/nginx/sites-available/commento.conf

contenant

server {
server_name commento.YOURBLOG.com;
root /var/www/ghost/system/nginx-root;

location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:8080;
}
}

Installation du certificat SSL

certbot install --nginx

Connectez-vous  : https://commento.YOURBLOG.com et créez votre utilisateur

Une fois votre utilisateur créé modifiez le fichier /etc/systemd/system/commento.service comme suit :

# Uncomment after creating your first user on commento.YOURBLOG.com
Environment=COMMENTO_FORBID_NEW_OWNERS=true

et relancez commento

sudo systemctl daemon-reload
sudo systemctl restart commento
sudo systemctrl status commento

Ensuite, il vous suffit d'insérer la ligne suivante dans le fichier post.hbs de votre thème

<div id="commento"></div>
<script src="https://commento.YOURBLOG.com/js/commento.js"></script>

Dans un prochain billet je vous expliquerais comment utiliser Commento avec MailGun le service de mail.