Aprende a crear una REST API usando Nodejs y Mongodb ademas de aprender a desplegarlo en producción usando un servidor privado virtual ademas de configurar el despleigue automatico usando Github Actions

Requeriments

  • Bases en Nodejs
  • Bases en Express
  • Bases en Mongodb

Plataformas de Despliegue

  • Digitalocean
  • Hostinger
  • AWS

ente otros.

Despliegue

Ve a Digitalocean y crea un VPS.

  • create an account

connection to the server

using a password

  • Go to your mail account

using ssh

ssh -i <file.pem> user@host

Add user

sudo apt update && sudo apt upgrade

adduser fazt usermod -aG sudo fazt

ssh -i fazt@IP pass:

mkdir projects cd projects git clone

nvm https://github.com/nvm-sh/nvm nmv install --lts

Mongodb

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/ sudo systemctl status mongodb sudo systemctl start mongodb

execute code with

yarn dev

add rule to clouding.io

firewall > add rul > tcp 3000 - 0.0.0.0

pm2

npm i pm2 -g pm2 list

pm2 run build pm2 dist/index.js --name api

add dns to namecheap

add dns to clouding io poiting to the ip

nginx redirect

vim /etc

server {
        listen 80;
        server_name fazt.xyz;

        location / {
                proxy_pass http://localhost:3000;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;
                proxy_cache_bypass $http_upgrade;
        }
}
~    

ln

certbot

guide

https://clouding.io/kb/es/articles/360009903900-FAQs-para-nuevos-usuarios-de-Clouding-io

resources

Versiones anteriores

Primer version del video

En esta primer version se uso Nodejs con express, mongoose y babel, y fue desplegado en un VPS manualmente.