No sé, técnicamente probar si la imagen que nosotros construimos es bastante fácil porque podemos venirnos
a nuestro bloque.
Podemos comentar estas líneas por especificar aquí la imagen que nosotros queremos usar y esta imagen
ahora sería de Clari bla bla bla bla.
Y el pat.
Técnicamente eso sería todo, porque también está usando las mismas variables de entorno y las configuraciones
que nosotros tenemos.
En fin, eso estaría bien y eso sería todo lo que ocupamos para hacer esa prueba en vez de que se construya,
usar esa imagen.
Técnicamente, eso es todo, pero este ejercicio se presta para que nosotros hagamos algo didáctico
que nos va a ayudar a asegurarnos de que estemos aprendiendo lo que nosotros, eh.
Bueno, lo que me interesa que ustedes aprendan, no?
Entonces, para este ejercicio les voy a pedir que para los que quieren y pueden vengan a su terminar
y vamos a purgar todas las imágenes que nosotros tenemos, todas para inclusive usar la imagen que vamos
a descargar de Internet.
Entonces Docker y Match Prune menos.
Ah, porque quiero eliminar todas.
Voy a presionar y.
Y esto borra todas.
De hecho ya lo había hecho este paso porque el video se me trabó y tuve que volver a grabar.
Entonces borren todos los que quieren, borren todas las imágenes.
Ok, ya las borramos, ya no teníamos ninguna.
Entonces ahora lo que voy a hacer es cerrar este Visual Studio Code.
Voy a irme a la carpeta de mi proyecto.
Voy a crear una nueva, un nuevo directorio que se va a llamar test testing.
Voy a decir testing solo para hacer las pruebas respectivas.
Esta carpeta la voy a abrir en Visual Studio Code.
Voy a crearme un archivo que sea 1012 menos composer.
Llamo y adicionalmente voy a ocupar las mismas variables de entorno.
Entonces ocupamos copiarnos las variables de entorno del proyecto anterior de test Photoshop.
Entonces aquí podríamos mostrar los archivos ocultos.
Voy a copiar este.
Vamos a hacer doble clic.
Voy a copiar todo esto.
Voy a crearme un punto y en mi pego.
Básicamente, todo esto está igual.
El puerto, el host, todo eso está igual.
Lo podemos dejar así.
Esto ya no lo ocupo y ya no ocupo ver mis archivos ocultos.
Bueno, básicamente lo que necesito es que ustedes tengan su a variables de entorno en el Docker Compost.
Va a venir la tarea que les voy a pedir a ustedes que hagan en este momento.
Van a empezar a construir todo el mismo Docker con ustedes.
Pueden ir al ejercicio anterior, copiar ese Docker y hacer las modificaciones respectivas, que es
lo que voy a terminar haciendo yo.
Pero necesito que ustedes hagan todo el Docker que posee tanto para voy a poner.
Bueno, no voy a escribirlo, pero necesito que ustedes hagan la parte de los servicios y dentro de
los servicios van a crearse uno llamado app, el cual va a ser la imagen que nosotros creamos en la
clase anterior y la base de datos que va a ser la imagen de PostgreSQL, que es literalmente la misma
que nosotros usamos en el ejercicio.
Monten estos dos servicios, Asegúrense obviamente de que este app trabaje con su imagen, no la mía,
con la que ustedes crearon.
Que trabaje con su imagen.
Y yo regreso en unos momentos con la solución.
Acuérdense que básicamente son la misma variable de entorno la que vamos a tener que proporcionar también
asegúrense.
Esto es importante en el estate, que es en la variable de entorno de stage.
Ustedes le van a poner Staging.
Staging.
Vamos a colocarle eso o dev o testing o cualquier otra diferente que no sea que no sea el de producción,
porque de producción necesita que nosotros hagamos la configuración del SSL, porque es una configuración
que se necesita para que las conexiones estén auténticas y demás, que es algo que nuestra base de datos
por defecto de la imagen que tenemos no funciona, o sea, no viene previamente configurado con el SSL,
y eso es algo que se tendría que poner de manera, o sea, se tiene que configurar para que nosotros
lo usemos.
Entonces, importante en el stage en la variable entorno colócale testing staging, cualquier cosa que
no sea pro.
Bueno, póngale pausa.
Traten de hacer esto por su cuenta y mi solución.
En unos momentos el resultado final debería ser la aplicación corriendo y ustedes deberían de poderla
ver nuevamente en el navegador web.
Pasa ahora.
Ok, como les fue?
Lo lograron hacer?
Espero que si y si no resolvamos esto juntos nuevamente.
Voy a venir a mi terreno, yo voy a abrir el post, voy a copiarme todo esto, voy a pegarlo por aquí,
voy a subir, que por cierto, en el material adjunto yo también les dejo a ustedes un enlace que lo
debería llevar a la especificación de la versión de lo que compuse para que ustedes puedan ver qué es
lo que ha pasado en cada una de esas versiones.
Y por si acaso ustedes tienen curiosidad de ver la versión uno.
Versión dos.
Migraciones que lo que hace cada cosa que introdujeron en cada una de las nuevas versiones, etcétera
Ustedes pueden ir al material adjunto para revisar esa versión, pero con la versión tres es más que
suficiente para lo que yo necesito en este momento.
Entonces, la parte del app, el servicio de la app no va a tener un Bill, no va a tener un volumen.
Vamos a colocar nuestra image, que la imagen va a ser la imagen que nosotros tenemos aquí.
Y recuerden, recuerden siempre utilicen un tag.
El tag en este caso sería el 1.0, que ese es el que yo subí.
Siempre usen un tag, no pongan enlaces porque eso puede llevar a problemas a futuro, no ahorita a
futuro.
Alguna incompatibilidad o algo así.
El container name lo podemos dejar.
Ese nombre no es a que pongamos de test, lo es, lo bajen o lo que ustedes quieran ponerle.
El puerto está bien porque el puerto va a venir de aquí, el esté hecha según se que no diga prod que
sea testing.
Lo demás está igual, osea todo lo demás está igual.
Voy a venir por aquí el host, todo eso está igual.
El container Name Divine tiene que ser el mismo.
Recuerden que el Divine ni el Divine aquí tiene que ser el mismo.
Y eso básicamente sería todo.
Grabemos los cambios, abramos una instancia, la terminal, naveguemos a la carpeta de este test testing.
No que posee UP y dejémoslo así.
Ah, por cierto, voy a cancelar.
Voy a cancelar.
Voy a cancelar antes de hacer eso.
Antes de hacer eso.
Este servicio de nuestro.
Bajen.
Depende de la base de datos.
Entonces vamos a colocar aquí que depende on nuestro servicio a base de datos y también restaure Always
para evitar tener Down Times por ahí.
Ok, haremos los cambios nuevamente.
Y ustedes vieron que ya como que ya lo tenía todo?
Bueno como que las imágenes ya estaban grabadas, osea ya estaban en el caché.
Vamos a borrar todo y toque el container.
Déjame revisar una cosa, aquí tengo que.
No tengo nada.
En fin, tengo que ir con post up.
Presionamos Enter, me crea las imágenes.
Bueno, la descarga en el caso que no la estuviéramos descargadas los realiza la descarga de la base
de datos y todo lo demás.
Y aquí ya tenemos nuestra aplicación corriendo nuevamente con nuestros simples comandos que tenemos
aquí.
Ok.
Podemos venir al navegador web?
Escribir localhost 3000.
Voy a poner un enlace API y ahí ya tenemos nuestra aplicación funcionando y lo demás perfecto.
Cerremos.
Y eso es básicamente el ejercicio que quería hacer.
Ya probamos la imagen.
Es momento de que nosotros empecemos a hacer el aprovisionamiento para desplegar esto en la nube y vamos
a desplegar nuestro contenedor o nuestra imagen, que va a terminar siendo montada en un contenedor
y simplemente que nosotros fácilmente podamos mantener el versión de nuestro código.
Es decir, si viene la versión dos o la versión tres.
Fácilmente simplemente cambiemos el tag y eso debería ser todo para un nuevo despliegue.
Pero para hacer este despliegue, recuerden que tenemos una dependencia de una base de datos.
Entonces vamos a hacer el aprovisionamiento de una base de datos posibles en la nube para poder después
decirle a nuestra imagen Esta es la cadena de conexión de esa base de datos o esa base de datos, etcétera
y eso lo vamos a hacer en las próximas clases.