Diseñé, construya y despliegue un aplicación web para investigar la conjetura de Collatz. El programa debe estar desplegado en un microcontenedor Docker corriendo en AWS. Las tecnologías usadas en la solución deben ser maven, git, github, maven, sparkjava, html5, y js. No use liberías adicionales.
- Incluya instrucciones de cómo clonarlo, compilarlo, y ejecutarlo.
- Descripción del proyecto en el README con pantalazos que muestren el funcionamiento.
- Descripción de cómo correrlo en EC2
- Video de menos de un minuto del funcionamiento (lo puede tomar con el celular una vez funcione o con teams)
Para clonarlo, ve a tu directorio de preferencia y escribe el siguiente comando
git clone https://github.com/rayo100/Parcial2doTercio-AREP.git
Luego, digita el comando
cd Parcial2doTercio-AREP
Finalmente ejecuta:
mvn clean install
Para correrlo desde un dispositivo con sistema operativo Windows, corre el siguiente comando
java -cp "target/classes;target/dependency/*" org.example.CollaztService
Para correrlo desde un dispositivo con sistema operativo Linux o Apple, corre el siguiente comando
java -cp "target/classes:target/dependency/*" org.example.CollaztService
Al realizar los pasos anteriores dirigete al browser e ingresa al siguiete enlace http://localhost:5000/index.html
Te debería aparecer algo así
Ahora puedes probar con cualquier número y obtener la secuencia que quieras.
Iniciamos construyendo la imagen en Docker Ejecutamos los siguientes comandos:
docker build --tag parcialdos . -f Dockerfile
docker images
Se dedería poder ver así:
A partir de la imagen creada, iniciamos una instancia de un contenedor docker independiente de la consola (opción “-d”) y con el puerto 6000 enlazado a un puerto físico de su máquina (opción -p):
docker run -d -p 34000:6000 --name firstdockercontainer parcialdos
Asegúrese que el contenedor está corriendo
docker ps
Acceda por el browser a http://localhost:34000/index.html y verifique la funcionalidad
Creamos un repositorio en dockerhub para subir la imagen
Ejecutamos el siguiente comando para crear una referencia a la imagen con el nombre del repositorio a donde desea subirla:
docker tag parcialdos cesar0616/parcialsegundotercio
Veificicamos:
docker images
Autentícamos en su nuestra cuenta de dockerhub (ingrese su usuario y clave si es requerida):
docker login
Empujamos la imagen al repositorio en DockerHub que cremos anteriormente
docker push cesar0616/parcialsegundotercio:latest
Verificamos que la imagen se haya subido correctamente:
Ahora vamos a AWS Academy Conectese a la instancia EC2 corriendo
Realice la instalación de docker en nuestra máquina:
sudo yum update -y
sudo yum install docker
Inicie el servicio de docker
sudo service docker start
Configure el usuario en el grupo de docker para no tener que ingresar “sudo” cada vez que invoca un comando
sudo usermod -a -G docker ec2-user
OJO!!! Desconectese de la máquina virtual e ingrese nuevamente para que la configuración de grupos de usuarios tenga efecto.
A partir de la imagen creada en Dockerhub cree una instancia de un contenedor docker independiente de la consola (opción “-d”) y con el puerto 6000 enlazado a un puerto físico de su máquina (opción -p):
docker run -d -p 42000:6000 --name parcialdos cesar0616/parcialsegundotercio
Abra los puertos de entrada del security group de la máxima virtual para acceder al servicio
Verifique que pueda acceder en una url similar a esta (la url específica depende de los valores de su maquina virtual EC2)
http://ec2-52-91-173-12.compute-1.amazonaws.com:42000/index.html
https://www.youtube.com/watch?v=BMpsMpFBMBk
Cesar Vásquez