Self Hosting

En este post voy a contar con cierto detalle qué aplicaciones tengo autoalojadas en mi VPS (virtual private server) de poco más de 5€ al mes.

Requisitos

Aunque llevo muchos años trabajando con Linux no me considero para nada un experto así que no necesitas un nivel alto para poder montarte tú un stack similar.

  • Básicamente manejarse bien con SSH (da igual si tu sistema es Windows, el VPS contrátalo Linux) y 4-5 comandos

  • 5€ al mes (o hacer el pago anual y te ahorras algunos euros)

Proveedor

En primer lugar hay que elegir un proveedor para el hosting. Mucha gente, cuando ya tienen un nivel, alojan sus aplicaciones en un equipo en su casa pero a mí me resulta más cómodo contratar un hosting.

En mi caso hasta hace poco usaba Dreamhost pero me he ido quitando de todo lo que sea USA y actualmente estoy en Hostinger, pero existen millones de alternativas.

Cuando contratemos el VPS el proveedor nos proporcionará una IP4 (tal vez tambien una IP6) y podremos consultarla en el dashboard de este. Cada proveedor tiene su interface, unos mejores otros peores, pero básicamente permiten contratar la máquina, ajustar los requisitos y una vez creada consultar la forma de acceder a ella

Dominio

Casi todos los proveedores te da un dominio gratis

OJO!! Suele ser por un año y luego te toca pagarlo. Según la extensión que hayas elegido será más o menos. Por ejemplo un dominio ".com" pueden ser unos 10-12€ pero un dominio ".ai" te saldría por una pasta

Con el plan de Hostinger tengo el dominio "jagedn.dev" gratis un año y luego me tocará pasar por caja

DNS

El DNS es el sistema que se usa en Intenet para resolver nombres de dominio y convertirlo a una dirección IP.

Lo normal es que el proveedor se encargue de gestionar los DNS pero te permita añadir, modificar o eliminar entradas. Esto lo veremos más adelante qué significa y para qué

VPS y SSH

Durante el proceso de creación del VPS habrás tenido que indicar o bien una password para el usuario root o bien que proporciones la clave pública de tu sistema para poder acceder (o bien las dos formas).

El usar una clave publica-privada es más robusto pero también más cómodo. En Linux sueles tener las claves creadas en ~/.ssh (recuerda subes la pública y NUNCA compartes la privada) o si no con openssh puedes crear un par

SSH es la forma habitual de "entrar" en tu VPS. Por defecto usa el puerto 22 pero a lo mejor tu proveedor durante la instalación te ofreció usar otro por lo que tendrás que tenerlo en cuenta.

Básicamente, cuando consigues entrar en la máquina con SSH estarás "sentado" delante de una pantalla de esa máquina y podrás gestionarla.

La consola SSH no necesitas controlar muchos comandos para ir manejándote en el día a día:

  • mkdir fulanito para crear una carpeta

  • rm -rf fulanito para borrarte la carpeta y todo lo que contenga, usalo bajo tu responsabilidad

  • tail -f fichero.txt para que muestre por pantalla un fichero y vaya actualizando la pantalla segun se escribe en él

Para editar ficheros vamos a usar nano mucho más simple que vi (y menos potente)

  • nano docker-compose.yml abre el fichero docker-compose.yml. Si no existe lo creará al salir guardando

  • escribes sin mas, con las flechas te manejas

  • ctrl w (es decir pulsar la tecla control y a continuación w sin soltar ctrl) para escribir

  • ctrl x para salir. Si no habíamos guardado nos preguntará si queremos salvar, escribimos "Y" o "N" según queramos

Copiar cosas al VPS es lo más habitual y necesita algo de práctica pero básicamente se resuelve con

  • scp mi-fichero.txt root@ip-hostinger:/ruta/donde/dejarlo

de la misma forma, pero cambiando el orden de los argumentos, nos podemos traer un fichero del VPS a nuestra máquina

para un uso normal de dia a dia, con esto basta

Docker

Lo primero que instalo en mi VPS es Docker. Puedes consultar la página oficial para ver los comandos según el Linux que hayas elegido. Yo suelo elegir Debian, pero lo normal es Ubuntu. Simplemente, es ir copiando y pegando los comandos en la consola SSH

Porqué Docker? Docker nos va a permitir instalar el 99.99% de las aplicaciones editando unas pocas lineas de fichero sin tener que instalar nada en nuestro VPS

Docker cuenta con el "plugin" compose que es el que usaremos en este post que nos permite esta gestión de aplicaciones usando un fichero, y en el que podremos tener diferentes servicios

INFO

Este post intenta ser lo más simple y dar una idea general. No es buena práctica tener todo en un mismo docker-compose pero tampoco pasa nada por tenerlo y facilitar mucho el trabajo.

Cuando usamos docker compose vamos a usar de forma habitual unos pocos comandos:

  • docker compose up -d , levantamos todo nuestro stack y además en background. Así cuando salgamos de la sesión SSH seguirán ejecutandose

  • docker compose logs -f , empezará a mostrar los logs de todos los servicios que esten corriendo hasta que lo cortemos con Ctrl+C

  • docker compose down , paramos todas las aplicaciones

Estos comandos admiten un parámetro adicional en el que indicamos que ejecute cada acción sobre el servicio que indicamos en lugar de sobre todo el stack. Es decir docker compose up -d caddy levanta en background el servicio caddy

Caddy

El primer servicio que vamos a crear y desplegar en nuestro VPS es Caddy

TODO!!!!

Blog

Mi blog no necesita base de datos, ni similar. NO es un WordPress, sino un static-site, contenidos estáticos que genero previamente en mi máquina y que copio al VPS cuando quiero actualizarlo

DNS

TODO!!!!

Caddy

TODO!!!!

Wallabag

Wallabag es un agregador de enlaces. Cuando navego por internet y veo un articulo que quiero leer luego lo añado con un simple click a mi Wallabag

DNS

TODO!!!!

Caddy

TODO!!!!

GotoSocial

Gotosocial es una aplicación de microblogging, similar a X, pero para el Fediverso. La diferencia principal es que TODO lo tengo guardado yo en mi VPS sin depender de nadie

DNS

TODO!!!!

Caddy

TODO!!!!

Snikket

Snikket es un servicio de mensajería basado en XMPP, con él puedo chatear de la misma forma que si fuera Whatsapp, Signal, o similar pero gestionando yo los usuarios, circulos, etc

DNS

TODO!!!!

Caddy

TODO!!!!

Photos

Mi albún de fotos en realidad son dos. Uno privado donde comparto las fotos con la familia y uno público que en realidad es un static site similar al blog pero dedicado sólo a fotos

DNS

TODO!!!!

Caddy

TODO!!!!

Este texto ha sido escrito por un humano

This post has been written by a human

2019 - 2026 | Mixed with Bootstrap | Baked with JBake v2.6.7 | Terminos Terminos y Privacidad