Codenip Profile picture
Jan 10 17 tweets 7 min read
Aprender a llevar nuestras aplicaciones a producción es algo que siempre nos cuesta. Hay Saas que nos ayudan, pero su precio puede ser elevado (sobre todo en proyectos pequeños o personales). Aquí una guía de cómo hacerlo por menos de 5€/mes.
Dentro hilo! 🧵
0/14 - Nuestra infraestructura se compone de:
- Una API con @symfony
- Un cliente con #NextJS
- Una base de datos #MySQL
1/14 - Lo primero que debemos hacer es tener un esquema de lo que queremos. Esto nos ayudará a saber qué servicios usar
2/14 - A continuación, necesitamos comprar un dominio para poder acceder a nuestra aplicación. Usar un servicio como @Cloudflare para gestionar este dominio es una buena idea
3/14 - Lo siguiente será comprar un servidor en un proveedor cloud para poder desplegar nuestro backend
4/14 - Es importante no ejecutar nuestra aplicación como usuario "root", por lo que es una buena idea crear un usuario que pertenezca al grupo de "sudo", para poder gestionar el servidor
5/14 - Configurar nuestra máquina local para poder acceder por SSH a nuestro servidor hará que podamos acceder de forma segura y rápida
6/14 - A continuación, deberemos instalar las herramientas necesarias para ejecutar nuestra aplicación. En este caso veremos Docker, PHP y Composer
7/14 - Para poder tener la última vEste caso de usoersión de código, deberemos clonar nuestro proyecto en el servidor
8/14 - Para hacer deploy, crearemos un script que será ejecutado desde una acción de Github. Esto nos ayudará a crear la imagen de docker y arrancar un contenedor (ahorrándonos el coste de una cuenta de Dockerhub)
9/14 - Tener una buena configuración de Docker para producción es muy importante para que todo vaya sobre ruedas. Aquí una explicación
10/14 - Para redirigir las peticiones externas a nuestro contenedor de Docker usaremos un Reverse Proxy de @nginx
11/14 - Para evitar ataques DDoS o accesos no deseados, instalaremos un certificado de #Cloudflare en nuestro servidor, denegando el acceso a toda petición que no tenga esos certificados
12/14 - Ahora ya podemos configurar nuestra acción de @github para que cada vez que hagamos merge a la rama "main" se ejecute el script de deploy
13/14 - Para nuestra cliente frontend (#NextJS) usaremos @vercel, lo que nos permitirá hacer deploy de forma gratuíta. Además, podremos redirigir el tráfico a través de #cloudflare
14/14 - Por último, crearemos un cluster de MySQL para gestionar nuestras bases de datos!
Si has llegado hasta aquí, esperamos que te haya ayudado. No dudes en darle a me gusta y a compartirlo con quien creas que le puede interesar. También dejar un comentario en los vídeos nos ayudará bastante!

Nos vemos ;)

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Codenip

Codenip Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(