Por si no lo sabés Mastodon es una red social descentralizada y de código libre. Es similar a Twitter solo que a los tweets se les llama toots y tienen un límite de 500 caracteres en lugar de los 140. Además existen muchas instancias alojadas en servidores de todo el mundo.
Como buen geek me puse a investigar como montar mi propia instancia de Mastodon para usuarios en español.
Elegí como plataforma a Heroku que es una plataforma como servicio en la nube y tiene una capa free para arrancar montando un sitio el cual puede ir escalando a medida que se va haciendo más grande el sitio.
Además desde el Git de Mastodon se puede hacer deploy directamente a Heroku a través de un botón, después de sacar la cuenta en Heroku vamos al Git de Mastodon y presionamos este botón, una vez terminado el deploy (Mastodon está hecho en Ruby con base de datos en Postgres SQL), tenemos ya montado el sitio, nos va a pedir el nombre de la app el cual va a terminar siendo la url de nuestro sitio: xxxxxx.herokuapp.com.
Una vez montado el sitio vamos a configurar algunas de sus variables para que comience a andar, seteamos el usuario Admin desde la linea de comandos de Heroku, agregamos el addon de Mailgun , el cual nos permite sacar una cuenta gratuita para enviar los mails de registración y demás. Hay que configurar las variables publicas para el smtp.
Despues compre un dominio en Namecheap ( por solo 1 dolar), y tambien me registre en Cloudflare que es un sitio gratuito que hace las veces de proxy, te protege de ataques y además te da soporte https para tu sitio, por lo tanto apunte mis DNS desde Namecheap a Cloudflare y en Cloudflare configure el dominio como alias del dominio de heroku xxxxxx.herokuapp.com.
Una desventaja que tiene Heroku es que no posee almacenamiento, así que para guardar las imágenes de los toots tenes que sacarte una cuenta de AWS S3 o bien como en mi caso uso Google Cloud Storage , ya que tuve problemas con la registración de S3 (nunca me llego la llamada por telefono).
Ya con todo eso más agregando algunos addons más a Heroku para seguir los logs de errores y monitorear el servidor tengo mi propia red social funcionando.
Por el momento está en fase beta para testear ya que el servidor de Heroku es free y no sé hasta cuantos usuarios se va a bancar.
Si querés sacarte una cuenta te paso la url por privado o bien si alguien me dice y me lo permiten pongo la url aquí en el post.
La idea es ir sumando registraciones para lograr una buena comunidad de linces y lincesas.
Traté de no ser tan técnico para no aburrir, si me lo solicitan puedo crear una segunda parte con más detalles