Introducción
Mastodon es una popular plataforma de microblogging de código abierto que permite a los usuarios crear sus propias redes sociales. El autoalojamiento de Mastodon te da control total sobre tus datos y la capacidad de personalizar tu instancia. En esta guía, te guiaremos a través de los pasos para instalar Mastodon en un VPS, cubriendo todo desde la selección del servidor hasta la configuración.
Requisitos Previos
Antes de comenzar, asegúrate de tener lo siguiente:
- Un VPS ejecutando Ubuntu 20.04 o posterior (consulta nuestra comparación completa de VPS para opciones).
- Nombre de dominio para tu instancia de Mastodon.
- Conocimientos básicos de herramientas de línea de comandos.
Elegir un Proveedor de VPS
Al seleccionar un proveedor de VPS, considera lo siguiente:
| Proveedor | Precio Inicial | Especificaciones |
|---|---|---|
| Contabo VPS | 5.99 EUR/mes | 4 vCPU, 8 GB RAM, 300 GB SSD |
| Hetzner Cloud | 4.15 EUR/mes | 2 vCPU, 2 GB RAM, 20 GB SSD |
| DigitalOcean | 6 USD/mes | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Vultr | 6 USD/mes | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Linode | 5 USD/mes | 1 vCPU, 1 GB RAM, 25 GB SSD |
Para esta guía, recomendamos Contabo o Hetzner Cloud por su equilibrio entre precio y rendimiento.
Paso 1: Configuración Inicial
-
Crea una nueva instancia de VPS: Elige tu proveedor deseado y configura una nueva instancia con una instalación mínima de Ubuntu.
-
Actualiza tu sistema: Conéctate a tu VPS usando SSH y ejecuta los siguientes comandos:
sudo apt update sudo apt upgrade -y -
Instala los paquetes requeridos:
sudo apt install -y git curl wget build-essential
Paso 2: Instalar Docker y Docker Compose
Mastodon se ejecuta dentro de contenedores Docker, lo que facilita la instalación y gestión.
-
Instala Docker:
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh -
Instala Docker Compose:
sudo apt install -y python3-pip sudo pip3 install docker-compose
Paso 3: Clonar el Repositorio de Mastodon
A continuación, clona el repositorio de Mastodon y navega dentro de él.
git clone https://github.com/mastodon/mastodon.git ~/.mastodon
cd ~/.mastodon
Paso 4: Configurar Variables de Entorno
Crea un nuevo archivo de configuración y complétalo con tus datos:
cp .env.production.sample .env.production
nano .env.production
Asegúrate de configurar tu dominio, correo electrónico y otras configuraciones relevantes.
Paso 5: Instalar Dependencias
Para poder construir la aplicación Mastodon, necesitas instalar Node.js, Yarn y otras dependencias.
-
Instala Node.js:
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install -y nodejs -
Instala Yarn:
npm install --global yarn -
Instala las dependencias de Ruby:
sudo apt install -y gcc libpq-dev libjpeg-dev libxml2-dev libxslt1-dev -
Instala Bundler:
sudo gem install bundler -
Instala gemas:
bundle install
Paso 6: Configuración de la Base de Datos
Mastodon utiliza PostgreSQL. Crea una nueva base de datos para tu instancia.
-
Instala PostgreSQL:
sudo apt install -y postgresql postgresql-contrib -
Crea un usuario y una base de datos:
sudo -u postgres createuser mastodon
sudo -u postgres createdb mastodon_production --owner mastodon
-
Asigna una contraseña:
Abre el prompt de PostgreSQL:
sudo -u postgres psqlLuego ejecuta los siguientes comandos, sustituyendo
<tucontraseña>:ALTER USER mastodon PASSWORD '<tucontraseña>';
Paso 7: Iniciar Mastodon Usando Docker
Ahora puedes iniciar la aplicación Mastodon usando Docker Compose.
docker-compose build
docker-compose up -d
Paso 8: Configurar Nginx
Configuraremos Nginx como un proxy inverso para redirigir las solicitudes a tu instancia de Mastodon.
-
Instala Nginx:
sudo apt install -y nginx -
Configura Nginx: Crea un nuevo archivo de configuración para tu instancia de Mastodon.
sudo nano /etc/nginx/sites-available/mastodonCompleta el archivo con lo siguiente:
server { listen 80; server_name tu_dominio.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } -
Habilita la configuración:
sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/ -
Reinicia Nginx:
sudo systemctl restart nginx
Paso 9: Completar la Instalación
Asegúrate de que todo esté funcionando correctamente:
docker-compose logs
Navega a tu instancia de Mastodon en un navegador web para completar la configuración.
Preguntas Frecuentes
1. ¿Cuánto cuesta autoalojar Mastodon en un VPS?
Los costos dependen del proveedor y del plan específico que elijas. Por ejemplo, el VPS de Contabo comienza en 5.99 EUR/mes, mientras que Hetzner Cloud comienza en 4.15 EUR/mes. Elige un plan que se ajuste a tus necesidades de recursos, como CPU y RAM, especialmente si anticipas un alto uso.
2. ¿Puedo alojar múltiples instancias de Mastodon en un mismo VPS?
Sí, es posible alojar múltiples instancias de Mastodon en un mismo VPS, pero esto requiere una gestión cuidadosa de recursos. Cada instancia necesitará su propia base de datos y puede requerir recursos significativos para funcionar de manera eficiente. Asegúrate de que tu VPS tenga suficiente potencia de CPU y RAM para soportarlas.
3. ¿Puedo personalizar mi instancia de Mastodon después de la instalación?
¡Absolutamente! Mastodon es altamente personalizable. Puedes cambiar temas, agregar nuevas funciones y gestionar cuentas de usuario a través del panel de administración. Muchos usuarios prefieren ajustar sus instancias para adaptarse a las necesidades específicas de la comunidad, como crear herramientas personalizadas de moderación de contenido o instalar complementos adicionales.
Siguiendo esta guía, ahora estás equipado para autoalojar Mastodon en tu VPS, lo que permite un mayor control y personalización de tu experiencia en redes sociales.