Entornos de desarrollo

1º DAM/DAW - Curso 2024-2025

User Tools

Site Tools


apuntes:despliegue

Despliegue de aplicaciones

Iniciar una instancia EC2 en AWS

  • Accedemos a la AWS Management Console
  • Accedemos al servicio EC2
  • Accedemos a la opción Instances
  • Desde alli pulsamos en Launch Instance para lanzar una nueva instancia de EC2
  • Una vez lanzada la instancia se nos descargará el fichero PEM que nos hará de certificado cuando queramos conectar con ella a través de SSH. En nuestro caso ese fichero se llamará cities.pem

Conectar con SSH a una instancia EC2 de AWS

Encontraremos las instrucciones para conectar pulsando en el botón Connect una vez hayamos seleccionado la instancia EC2 con la que queremos conectar.

Si queremos conectar mediante SSH, las instrucciones están en la pestaña que dice SSH Client. Será algo como esto:

ssh -i "cities.pem" ec2-user@ec2-94-12-3-207.compute-1.amazonaws.com

Preparar la instancia EC2 para el despliegue

Una vez que hayamos logrado conectar con la instancia EC2, el primer caso será instalar todo lo necesario. En nuestro caso será:

  • Docker
  • Docker compose
  • Node.js
  • Git (para clonar el repositorio con nuestro código)

Instalar docker y docker-compose

santi@zenbook:$ sudo yum install docker
santi@zenbook:$ curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o docker-compose
santi@zenbook:$ chown ec2-user.ec2-user docker-compose
santi@zenbook:$ cp docker-compose /usr/local/bin

En este punto deberiamos ser capaces de ejecutar los comandos docker y docker-compose como superusuario:

santi@zenbook:$ sudo docker
santi@zenbook:$ sudo docker-compose

Instalar nodejs

santi@zenbook:$ yum install nodejs

Clonar el repositorio

santi@zenbook:$ sudo yum install git
santi@zenbook:$ git clone https://github.com/codeandcoke/cities

Lanzar la aplicación

santi@zenbook:$ sudo docker-compose -f docker-compose.dev.yaml up -d
santi@zenbook:$ npm install
santi@zenbook:$ npm start

Y ya tendremos, por ejemplo, el endpoint GET /cities disponible en http://ec2-94-12-3-207.compute-1.amazonaws.com:8080/cities


© 2024 Santiago Faci

apuntes/despliegue.txt · Last modified: 2025/03/24 23:51 by Santiago Faci