Installer Pixelfed sur Docker
Pixelfed est un réseau social fédéré ayant pour vocation de se substituer à Instagram.
Dans la liste des réseaux sociaux fédérés, on retrouve également Mastodon, Friendica ou encore Plemora.
C’est ce qu’on aime appeler le Fédiverse.
Et c’est là tout l’avantage du Fédiverse, car chacun peut créer sa propre instance (son bout de Fédiverse), avec toutes les applications compatibles qu’il souhaite, et interagir avec d’autres utilisateurs locaux, ou d’autres instances.
Aujourd’hui, nous allons voir comment installer Pixelfed avec Docker.
J’ai longtemps galéré à installer Pixelfed, qui ne fonctionnait tout simplement pas.
C’est pourquoi je me suis motivé à trouver une solution, parce que j’aime le fédiverse, mais surtout parce que je me dis que d’autres personnes comme moi pourraient avoir besoin de ce tutoriel.
Alors c’est parti !
Dottie
Dottie est un petit logiciel Linux qui permet de gérer son fichier .env grâce à des scripts automatisés, ce dont nous aurons besoin pour installer Pixelfed, et surtout le faire fonctionner.
Pour installer Dottie, quelques étapes simples :
Ajouter la source de paquet APT
echo 'deb [trusted=yes] https://pkg.jippi.dev/apt/ * *' | sudo tee /etc/apt/sources.list.d/dottie.list
Mettre à jour la base de paquets & installer Dottie
apt update && apt install dottie
Le script de Jippi
Le script de Jippi déploie Pixelfed tout seul, comme un grand, en posant quelques questions relatives à notre future instance Pixelfed. C’est la seule méthode de déploiement qui a fonctionné pour moi.
Créer le dossier
/DATA/AppData est le dossier de mes containers Docker.
Adaptez cette variable à votre environnement.
mkdir /DATA/AppData/pixelfed
Cloner le dépôt GitHub
On va récupérer le projet depuis GitHub
git clone https://github.com/jippi/docker-pixelfed.git
Vérification des prérequis & déploiement
scripts/check-requirements
scripts/setup
Le script d’installation nous pose différentes question auxquelles in nous faut répondre.
Je ne détaillerai pas ici les réponses à donner, car elles dépendent de ce que vous souhaitez faire.
Paramétrer l’envoi de mails
Pour une instance qui fonctionne correctement, notamment si vous avez activé la vérification par mail, vous devez configurer un serveur SMTP pour que Pixelfed puisse envoyer des mails aux utilisateurs.
Dans le fichier .env, décommentez les lignes suivantes, en personnalisant les valeurs en fonction de votre serveur SMTP ou compte GMail.
nano /DATA/AppData/pixelfed/.env
MAIL_DRIVER="smtp"
MAIL_HOST="email_server"
MAIL_PORT="email_port"
MAIL_FROM_ADDRESS="email_address"
MAIL_FROM_NAME="${APP_NAME}"
MAIL_USERNAME="email_address"
MAIL_PASSWORD="email_password"
MAIL_ENCRYPTION="email_encryption like tls"
La ligne MAIL_FROM_NAME= »${APP_NAME} » doit simplement être décommentée.
La valeur se charge de reprendre le nom que vous avez donné à votre instance.
Si vous avez une instance Mastodon
Si vous possédez également une instance Mastodon et que vous souhaitez pouvoir vous connecter à Pixelfed avec votre profil Mastodon, ajoutez les lignes suivantes à votre fichier .env.
Merci à D1re_W0lf sur le Discord officiel de Pixelfed
PF_LOGIN_WITH_MASTODON_ENABLED_SKIP_CLOSED="true" PF_LOGIN_WITH_MASTODON_ENABLED="true" PF_LOGIN_WITH_MASTODON_DOMAINS="mastodon.domain,other.instance" #PF_LOGIN_WITH_MASTODON_ONLY_CUSTOM="true"
- La première ligne autorise la création de compte Pixelfed depuis un compte Mastodon si les inscriptions sont fermées sur votre instance.
- La seconde ligne active la connexion avec un compte Mastodon
- La troisième ligne ajoute votre propre instance Mastodon à la liste des instances utilisables.
Séparez chaque adresse par une virgule. - La quatrième ligne permet d’empêcher l’utilisateur de renseigner & d’utiliser sa propre instance Mastodon pour se connecter à votre instance Pixelfed.
Elle est commentée car pour ma part, les utilisateurs de mon instance peuvent se connecter avec leur profil de leur propre instance Mastodon.
Compte administrateur
Pour utiliser notre nouvelle instance Pixelfed & en être l’administrateur, il faut suivre ces quelques étapes.
S’inscrire
Créez simplement un compte Pixelfed sur votre instance. Vous pouvez créer un compte propre à Pixelfed, ou vous connecter avec votre compte Mastodon.
Se donner les droits administrateur
Rendez-vous sur Portainer, et ouvrez un terminal sur le container pixelfed-web

Dans le terminal de votre container, lancez la commande suivante
php artisan user:admin nomdutilisateur && php artisan config:cache && php artisan cache:clear
Il ne vous reste plus qu’à redémarrer votre container web.
Trouver & suivre les utilisateurs d’autres instances
J’ai rencontré le problème lorsque j’ai commencé à vouloir suivre d’autres utilisateurs de Pixelfed, inscrits sur d’autres instances que la mienne. Lorsque je cherchais l’utilisateur sur mon instance, avec @username@instance.domain je ne trouvais rien.
Merci à pixelone.org sur le Discord officiel de Pixelfed
Lancez un terminal sur le container web de Pixelfed, et lancez la commande suivante
php artisan instance:actor && php artisan cache:clear
Par acquis de conscience, je redémarre toujours le container web de Pixelfed.
Lister son instance dans la liste officielle
Pour avoir une chance que votre instance soit listée dans la liste officielle du site pixelfed.org, vous devez d’abord remplir les prérequis mentionnés dans votre interface d’administration > Directory.
Pour ma part, je n’en sais pas plus sur ce processus, mais je lis ici et là que c’est ensuite aux développeurs de valider (ou non) votre instance pour qu’elle apparaisse dans la liste publique.

Conclusion
C’est la seule méthode fonctionnelle que j’ai trouvée pour faire fonctionner une instance Pixelfed avec Docker.
Elle a l’avantage d’utiliser les images Docker officielles publiées par les développeurs de Pixelfed.

