Je profite d'une phase d'accalmie pour terminer et publier cet article.
Il fut une époque où internet avait moins de possibilités pour se divertir. Un truc qui fonctionnait pas mal, c'était les sites de citations. Comme VMD, et d'autres, dont j'ai oublié le nom.
Aujourd'hui, nous allons parler de Faridoon! Cette application va vous permettre de partager vos meilleures citations prises sur un forum, Discord, … Cela peut être sympa d'alimenter cela entre potes au travail, avec vos amis, …
Le concept est simple mais inusable, l'être humain étant bourré de ressources infinies pour dire des conneries. Et c'est tant mieux!
⚡ Caractéristiques
- Mise en évidence automatique des noms d'utilisateur.
- Suppression semi-intelligente des sauts de ligne et des caractères étranges.
- Connexion et enregistrement des utilisateurs, avec prise en charge des administrateurs et des non-administrateurs.
- Système d'approbation pour les soumissions d'invités et de non-administrateurs.
- Système de vote.
- Configuration facile via des variables d'environnement ou un fichier de configuration.
💾 L'installation
- Créez votre compose.yml dans le dossier ou vous comptez installer ConvertZ:
sudo nano compose.yml
- Et collez ça dedans:
name: faridoon
services:
faridoon:
container_name: faridoon
image: ghcr.io/jamesread/faridoon
volumes:
- faridoon-config:/config
ports:
- "8914:8080"
environment:
DB_HOST: faridoon-mysql
DB_NAME: faridoon
DB_USER: utilisateur
DB_PASS: MotDePasse
ENABLE_VOTING: 1
#GUESTS_DISABLE_ADD: true
restart: unless-stopped
networks:
- faridoon-network
depends_on:
faridoon-mysql:
condition: service_healthy
faridoon-mysql:
container_name: faridoon-mysql
image: mysql
volumes:
- faridoon-mysql:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: iD3G51
MYSQL_DATABASE: faridoon
MYSQL_USER: utilisateur
MYSQL_PASSWORD: MotDePasse
restart: unless-stopped
networks:
- faridoon-network
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h localhost"]
interval: 20s
timeout: 5s
retries: 10
volumes:
faridoon-config:
faridoon-mysql:
networks:
faridoon-network:
Vous est préférable de modifier:
- DB_USER: utilisateur => Changez utilisateur par un nom d'utilisateur différent.
- MYSQL_USER: utilisateur => Changez utilisateur par un nom d'utilisateur différent. Il doit-être identique à celui de DB_USER.
- DB_PASS: MotDePasse => Changez MotDePasse par un mot de passe différent.
- MYSQL_PASSWORD: MotDePasse => Changez MotDePasse par un mot de passe différent. Il doit-être identique à celui de DB_PASS.
Vous pouvez modifier:
- ENABLE_VOTING: 1 => Si vous souhaitez activer le vote. Dans le cas contraire, mettez 0 à la place de 1.
- #GUESTS_DISABLE_ADD: true => Retirez le # avant la ligne si vous voulez empêcher les utilisateurs sans compte de pouvoir ajouter des citations.
- On va déployer l'application:
docker compose up -d
- Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 8914 par défaut :
http://ip:8914/
ou votre domaine:
https://faridoon.mondomaine.com
👤 Création du compte administrateur
Le tout premier compte crée sera d'office celui de l'administrateur.
Cliquez sur Login :
Cliquez ensuite sur Register :
Remplissez le formulaire :
- Username => Choisissez un nom d'utilisateur.
- Password => Choisissez un mot de passe fort.
- Password (confirm) => Confirmez ce mot de passe.
- E-Mail address => Indiquez une adresse e-mail.
Terminez en cliquant sur Register user. Si tout s'est bien déroulé, vous aurez ce message de confirmation:
✅ Valider une citation
Quand vous êtes connecté avec le compte administrateur, cliquez sur Approvals :
Vous verrez les citations en attentes, cliquez sur le V pour en valider une :
☑️ 🚫 Permissions
Si vous souhaitez que vos utilisateurs enregistrés puissent-être modérateur et approuver les nouvelles citations, allez dans la partie de votre compte administrateur, partie user :
Dans le fond de la page, vous avez le bloc Usergroup: Users. Cliquez sur le + :
Sélectionnez APPROVE_QUOTES et terminez en cliquant sur Grant :