Móntate tu propio blog en 5 m con docker compose

Móntate tu propio blog en 5 m con docker compose

Hoy me ha dado por hacer una entrada con un pequeño tutorial de como montarte esté el mismo software de blogging que estoy usando para escribir este tutorial sobre como montarte el software de blogging que estoy usando para escribir este tutorial... Bastante recursivo

Prerrequisitos

  • Una VPS o un Ordenador con Docker instalado y el puerto 80 abierto y/o redireccionado al ordenador en cuestión
  • Un dominio

El dominio

Hay muchas formas de conseguirte un dominio, lo primero que te debes preguntar es si quieres pagar o no

Si quieres pagar puedes irte a cualquier proveedor de dominios como NameCheap, Ionos (el que yo uso), Google Domains, etc. Y compraros el dominio que queráis.

En caso de que quieras uno Gratis, la mejor opción es FreeDNS

Una vez tengamos el dominio creamos un registro A en el y lo apuntamos a la IP de nuestra VPS u Ordenador.

Desplegando Ghost

Conéctate a tu VPS u ordenador por SSH o si es una máquina Windows (¿Por qué harías eso?) por RDP o si es tu PC, pues enciendes tu PC. Nos vamos a crear un directorio de trabajo para las cosas del blog.

En Linux ejecuta

mkdir ghost-blog && cd ghost-blog

En Windows, pues te creas tu carpetita a mano

Una vez en la carpeta descargamos el archivo de configuración docker-compose.yaml de los servicios

En Linux ejecuta

wget https://gist.githubusercontent.com/NereaCassian/651bd8c3440fa4911b564e201d9c86cf/raw/337aef73d2235b7f9337e8422299a2fa512ad478/docker-compose.yaml

En Windows te vas a este gist y te descargas el archivo, o copias el contenido del gist a un archivo llamado docker-compose.yaml dentro del directorio que creamos anteriormente. Alternativamente, puedes descargártelo de aquí y ya. Que no se diga que no os doy opciones.

Una vez tengamos el archivo vamos a editarlo, nos interesa cambiar la línea 19

  ghost:
    image: ghost:latest
    container_name: ghost
    restart: always
    ports:
      - 80:2368
    environment:
      database__client: mysql
      database__connection__host: ghost-mysql
      database__connection__port: 3306
      database__connection__user: root
      database__connection__password: example
      database__connection__database: ghost
      
      url: https://your.domain.com <---- pon aqui tu dominio
    volumes:
      - ./blog:/var/lib/ghost/content
      - ./config.production.json:/var/lib/ghost/config.production.json

Que tendremos que sustituir por nuestro dominio. Una vez hecho esto procedemos a desplegar

En Linux y en Windows ejecutamos en nuestro directorio de trabajo

docker compose up -d

Y vemos como todo mágicamente se levanta, ahora si hemos apuntado correctamente nuestro dominio a la VPS u ordenador al navegar a https://tudomino.ejemplo/ghost accederemos a la ventana de configuración de nuestro blog, a partir de aquí todo lo que necesitáis está en las docs de ghost.

Y ya lo tienes!!!!

Así de sencillo tienes un pequeño espacio en internet donde publicar tus entradas de blog con muchísimas implementaciones, temas, personalizados, estadísticas de visitas, creación de usuarios para postear de forma colaborativa y muchísimas cosas más.  

Para mí este blog me ha ayudado a dedicarle un tiempo de cuando en cuando a escribir sobre las cosas que sé, me gustan o que quiero compartir y de esa forma mejorar mis habilidades escribiendo, opinando, enseñando y además me motiva a seguir haciendo, leyendo, viendo, escuchado y aprendiendo cosas para crear más posts que de forma retroactiva me ayudan a sintetizar mejor mis pensamientos y asentar lo que aprendo. Y si de paso puedo ayudar a alguien con alguno de estos posts, aún mejor.

El conocimiento es libre y debemos compartirlo. Nos vemos en la red :3