Guía para crear una instancia de Mastodon • Descentraliza.red

Guía para crear una instancia de Mastodon

Convierte tu idea en una comunidad federada y descentralizada.

Introducción

Mastodon permite a cualquier persona crear su propia instancia y federarse con el resto del Fediverso. Administrar una instancia te da control total sobre reglas, políticas y comunidad, sin depender de plataformas centralizadas.

¿Por qué crear una instancia?

  • Independencia: no dependes de administradores externos.
  • Privacidad y control: defines reglas y moderación.
  • Descentralización: más nodos fortalecen el Fediverso.
  • Comunidades a medida: espacios seguros y afines.

Requisitos previos

ComponenteRequerimientos mínimos
Sistema operativoDebian 11 / Ubuntu 22.04
CPU2 vCPU
RAM4 GB (recomendado 8 GB)
Almacenamiento50 GB SSD (≈ 500 usuarios)
Base de datosPostgreSQL 13+
OtrosRedis, Node.js, Yarn

Instalación (opciones)

Instalación manual (Debian/Ubuntu)

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git ufw postgresql redis-server nginx certbot python3-certbot-nginx

Instalación con Docker

sudo apt install -y docker.io docker-compose

Configuración del entorno

Edita .env.production para personalizar dominio, correo y parámetros clave.

Dominio

LOCAL_DOMAIN=mastodon.tudominio.com
WEB_DOMAIN=mastodon.tudominio.com

Base de datos

DB_HOST=localhost
DB_USER=mastodon
DB_NAME=mastodon_production
DB_PASS=contraseña_segura
DB_PORT=5432

SMTP

SMTP_SERVER=smtp.mailgun.org
SMTP_PORT=587
SMTP_LOGIN=postmaster@tudominio.com
SMTP_PASSWORD=contraseña_segura
SMTP_FROM_ADDRESS=Mastodon

Federación

Asegúrate de que tu instancia pueda comunicarse con otros servidores del Fediverso (puertos abiertos, DNS correcto y cola de Sidekiq funcionando).

Finalizar la instalación

RAILS_ENV=production bundle exec rails assets:precompile
RAILS_ENV=production bundle exec rails db:migrate
sudo systemctl restart mastodon-web mastodon-sidekiq mastodon-streaming

Seguridad y optimización

HTTPS (Let’s Encrypt)

sudo certbot --nginx -d mastodon.tudominio.com

Proteger PostgreSQL

sudo -u postgres psql
ALTER USER mastodon WITH PASSWORD 'tu-nueva-contraseña-segura';
\q

Mantenimiento y actualizaciones

Estado de servicios:

sudo systemctl status mastodon-web mastodon-sidekiq mastodon-streaming

Actualizar Mastodon:

cd mastodon
git pull
RAILS_ENV=production bundle install
RAILS_ENV=production bundle exec rails db:migrate
RAILS_ENV=production bundle exec rails assets:precompile
sudo systemctl restart mastodon-web mastodon-sidekiq mastodon-streaming

Copias de seguridad

pg_dump -U mastodon -h localhost mastodon_production > backup.sql
tar -czvf mastodon-backup.tar.gz /home/mastodon/live/

Administración y moderación

Panel de administración:

https://mastodon.tudominio.com/admin

¡Listo!

Tu instancia ya debería estar disponible en mastodon.tudominio.com.

Fuentes y documentación

Descargar esta guía

Descargar PDF

Difunde

Nueva guía: cómo desplegar tu instancia de Mastodon → descentraliza.red/crear-instancia-mastodon