Mastodon est un réseau social décentralisé et open-source qui offre une alternative respectueuse de la vie privée aux plateformes sociales traditionnelles. Son architecture décentralisée permet à quiconque d’héberger sa propre instance Mastodon, favorisant ainsi un espace en ligne plus ouvert et diversifié. Ce guide vous montrera comment installer Mastodon sur Ubuntu 22.04, en le rendant accessible et compréhensible même pour les nouveaux venus.
Prérequis
- Un serveur Ubuntu 22.04 avec au moins 2GB de RAM (4GB recommandé pour de meilleures performances).
- Un utilisateur non-root avec des privilèges sudo.
- Un nom de domaine pointant vers votre serveur.
Étape 1 : Installation des Dépendances
Mastodon dépend de divers logiciels tels que PostgreSQL, Redis, Ruby, et Node.js. Commencez par installer ces composants essentiels.
- Mettez à jour le système :
sudo apt update && sudo apt upgrade -y
- Installez les dépendances nécessaires :
sudo apt install imagemagick ffmpeg libpq-dev libxml2-dev libxslt1-dev file git-core g++ libprotobuf-dev protobuf-compiler pkg-config nodejs gcc autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev nginx redis-server redis-tools postgresql postgresql-contrib certbot python3-certbot-nginx yarn -y
Étape 2 : Installation de Ruby
Mastodon utilise Ruby, donc installez la version recommandée via rbenv pour faciliter la gestion des versions Ruby.
- Installez rbenv et ruby-build :
cd
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
- Installez Ruby (remplacez
x.x.x
par la dernière version stable de Ruby compatible avec Mastodon) :
rbenv install x.x.x
rbenv global x.x.x
- Vérifiez l’installation de Ruby :
ruby -v
Étape 3 : Configuration de PostgreSQL et Redis
- Créez un utilisateur et une base de données PostgreSQL pour Mastodon :
sudo -u postgres psql
Dans l’invite de commandes de PostgreSQL, exécutez :
CREATE USER mastodon CREATEDB;
CREATE DATABASE mastodon_production OWNER mastodon;
\q
- Assurez-vous que Redis est activé et fonctionne :
sudo systemctl enable redis-server.service
sudo systemctl start redis-server.service
Étape 4 : Installation de Mastodon
- Clonez le dépôt Mastodon et installez ses dépendances :
git clone https://github.com/tootsuite/mastodon.git ~/mastodon
cd ~/mastodon
git checkout $(git tag | sort -V | grep -vE 'rc|beta' | tail -n 1)
bundle install --deployment --without development test
yarn install --pure-lockfile
- Configurez Mastodon :
Copiez les fichiers de configuration d’exemple et éditez-les selon vos besoins :
cp .env.production.sample .env.production
nano .env.production
Ajoutez vos informations de base de données, les secrets, et configurez les autres options selon votre environnement.
- Précompilez les actifs et configurez la base de données :
RAILS_ENV=production bundle exec rails db:setup
RAILS_ENV=production bundle exec rails assets:precompile
- Configurez un service systemd pour Mastodon :
sudo cp dist/mastodon-*.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now mastodon-web mastodon-sidekiq mastodon-streaming
Étape 5 : Configuration de Nginx et Let’s Encrypt
- **Configurez Ngin
x** en créant un fichier de configuration pour Mastodon et en modifiant selon votre domaine :
sudo nano /etc/nginx/sites-available/mastodon
Utilisez l’exemple de configuration fourni dans le dossier Mastodon, ajustez pour votre domaine.
- Activez la configuration et testez Nginx :
sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
- Sécurisez votre installation avec Let’s Encrypt :
sudo certbot --nginx -d votre_domaine.com
Après avoir configuré votre instance Mastodon sur Ubuntu 22.04, envisagez d’utiliser les services Cloud VPS de Shape.host pour un hébergement fiable et performant. Les solutions Linux SSD VPS de Shape.host offrent une scalabilité et une sécurité optimales pour votre instance Mastodon, vous permettant de grandir votre communauté sans soucis de performance ou de disponibilité.