Para esta clase, les voy a pedir que por favor vayan al material adjunto, el cual los llevará directamente
a la documentación oficial del Bill X.
Ustedes pueden hojearlo.
Les dejo a ustedes más información al respecto, etcétera, etcétera, para que puedan saber cuando
esto ya está soportado por el Bill, literalmente soportado por Docker en la instalación que nosotros
hicimos de Docker en nuestro equipo en Linux.
Esto que ustedes están viendo van a poder seguirlo, por lo menos en este momento que estoy grabando
el video en Windows y Mac.
Ok.
Pueden leer más al respecto cuando ustedes se encuentren en un Linux, si quieren hacer utilizar esta
misma herramienta para hacer esa construcción, entonces vayamos a donde dice que estar y yo los invito
a que ustedes lean esta documentación no es muy extensa y nos va a servir a nosotros para crear otros
builders.
Entonces en el Jerry Starter van a ver que podemos ejecutar el comando de Docker Build LS para listar
los builders existentes.
Ya vamos a ver y va a tener más sentido esto de los builders muy pronto, aunque imagino que con el
nombre de uno de ustedes sabrá lo que es.
Básicamente son constructores de imágenes.
Entonces hagamos el Docker build ex ls ls.
Vamos a listar todos los builders que nosotros tenemos que tenemos en default y en Linux.
Si ustedes hacen la ventana un poco más pequeña, por ejemplo, van a ver que aquí ya los tenemos mejor
listados, solo que como son tantos, se crean varias líneas, pero ahí ya lo tenemos.
Pero déjeme hacer esto más grande y maximizar la ventana.
Perfecto.
Entonces ya vemos que hay varios.
Y por cierto, ustedes van a ver aquí diferentes arquitecturas que nosotros tenemos soportadas Linux
cuatro, MS 64, etc, etcétera, etc no todas estas.
El que instale.
Vamos a crear una nueva o un nuevo flex.
Entonces un nuevo Builder Docker Bit x una instrucción de crear.
Le vamos a poner el nombre de mi Builder.
Podemos usar esto perfectamente el driver Docker, Docker, Container y Bootstrap.
Igual pueden ver esta documentación.
Leer más al respecto.
Para que?
Para que sepan que sirve cada uno de estos comandos.
Pero vamos a copiarlo y lo pegamos por acá, presionamos Enter y esto va a descargar una imagen.
Literalmente es una imagen como la que nosotros hemos creado antes y esperamos un momento que haga la
descarga de la imagen creando el contenedor perfecto.
Y esto hace algo interesante.
Si ustedes hacen un docker container ls presionen enter, van a ver que aquí va a aparecer su bit x
build toolkit, etc, etc va a aparecer ahí.
Si ustedes abren el Docker Desktop también van a ver aquí subir esta de aquí, que es la imagen del
cron y que ustedes la pueden borrar, se la podemos borrar de ahí, ya no la necesito, pero van a ver
que aquí ya está corriendo el bit X.
Esto es genial porque me va a permitir a mí utilizarlo para así definir la construcción y que creen
las imágenes con todas las versiones y todos los sabores en un sola en una sola línea.
Si ustedes hacen el Docker Build x ls ahora debería aparecer aquí su builder.
Ok, pero recuerden, este asterisco indica cuál es la que está seleccionada actualmente, que está
seleccionada, la que está por defecto y todavía no ha hecho ningún cambio.
Ok, no lo estoy utilizando todavía, simplemente lo creé para usarlo o para cambiarlo.
Ustedes tienen el dock builds y el builder que ustedes o el nombre o identificador que ustedes pusieron,
entonces hacen ese comando dos X Builder o bien y después hacen nuevamente el LS y van a ver que ahora
el asterisco indica de que este mi builder es el que está siendo utilizado en este momento.
Ok, perfecto.
Una vez confirmado eso.
Podemos inspeccionarlo en el caso que ustedes quieran.
Podemos copiar esta línea, pegarla por aquí y presionar Enter.
Y van a ver todas las plataformas en las cuales nosotros o este Builder va a trabajar.
Linux 64, etc, todas esas las que les aparezca a ustedes.
Perfecto.
Voy a regresar, voy a bajar aquí ya habla más sobre el comando que ya ejecutamos, bajamos un poco
más y usualmente que aquí es donde viene lo interesante que es lo que les mostré en la clase anterior
o antes de la anterior.
Nosotros estamos usando nuestra imagen, en este caso un ALPA en el ejercicio está en un Alpine, pero
si nosotros quisiéramos cambiar la plataforma podemos mandarlo con el Doc, Orville Hex, etcétera,
etcétera.
Este comando que tenemos aquí, pero hay una forma interesante.
Vamos a bajar un poco más, bajemos un poco más y la verdad es que no está por acá.
Estoy buscando algo en particular.
Ya les voy, ya les muestro.
Dónde estás?
Aquí está, Aquí está.
Entonces van a ver que ese es el comando que nosotros habíamos ejecutado anteriormente.
En el cual forzamos la construcción de una imagen basado en una arquitectura que nosotros especificamos,
en este caso Linux DMS 64, pero automáticamente Docker Docker File nos va a proporcionar una o dos
variables de entorno que podemos utilizar.
Uno es el Build platform y el otro es el target platform, y ustedes lo pueden ver por acá.
Es decir, run eco.
Dios mío, se movió esto!
Se me perdió.
Ay, Dios!
Voy a bajar.
Se me perdió.
Aquí estamos.
No sé, como que parecen enlaces que me llevan a la documentación del running.
Ok, nuevamente vamos a ver que es que dice Run Eco.
Esto voy a imprimir en consola.
Dice que estoy corriendo porque esos mensajes de eco van a aparecer cuando ustedes monten la la imagen
y dice Estoy corriendo en tal plataforma construida con Target Platform.
Pero lo realmente importante para nosotros es esta partecita de aquí.
Copien la.
Regresemos a Visual Studio Code Clone en esta línea comenten esta otra y en lugar de especificar la
plataforma manualmente, puedo usar ese comando.
Qué pegué que es platform y me mande mi variable de entorno.
Entonces, esta imagen en particular va a depender de todas las plataformas que mi builder o mi Bil
X va a proporcionarme.
Y también pueden ustedes ver ahí el Target Platform si así lo desea.
Bajemos un poco más, bajemos un poco más.
Y bueno, aquí ya se creó inspeccionar todo y aquí viene el punto importante.
Ustedes pueden hacer el Docker builds y especificar las plataformas.
Ahora sí.
Entonces en este caso ustedes van a decir que lo quiero construir para MF 64 64 Y eso de aquí y después
es exactamente lo mismo.
Van a ver el tag user main y match es push.
Entonces pocas palabras.
Todo este comando que estamos viendo acá.
Es el mismo Velt.
Solo que ahora Bill X Belt.
Será raro, pero nuevamente va a usar el que esté actualmente seleccionado con el Doc Bill, Use Belt
y todas las plataformas que yo quiero.
Le voy a poner el tag que está acá y de una vez hace el push perfecto.
Entonces, en este caso, si quieren ustedes pueden copiar todo este comando.
Regresemos a Visual Studio Code, abran una nueva pestaña sólo para que ustedes lo peguen y los guiemos.
Recuerden que tienen que verificar que estas versiones de Linux ustedes las tengan a su disposición,
si no, entonces no van a poder hacerlo.
Entonces Docker Bill X Platform, Vamos a dejar esta de aquí.
Voy a presionar un back slash entre ustedes.
Ya saben qué es lo que hace Back Slash.
Están en la PowerShell.
Recuerden.
El tag.
En mi caso sería Clarice y la imagen era recuerden escribirlo bien con menos sticker.
Dejémoslo con el.
Eres menos, menos pus.
Básicamente, todo lo demás está igual.
Revisemos las versiones En Linux aun todavía puedo agregar siete Linux de 64 a 64 y creo que me puedo
ir solo con esas.
También podemos utilizar aquí tengo, aquí tengo en la mano otra y puedo utilizar separados por coma
Linux ARMS 64 v ocho.
Ok, voy a grabar los cambios.
Bueno, los cambios.
Voy a copiar esto.
Voy a regresar a las terminales.
Recuerden que estoy exactamente donde tenemos nuestro Docker File.
Eso es importante también, porque lo tengo que disparar.
Donde está el Docker?
Porque cuando yo ponga este punto, va a buscar el Docker file en donde yo estoy ejecutando el comando.
Ok, presionemos enter.
Recen un padrenuestro.
Vayan por café y regresen cuando el procedimiento termina, porque aquí va a demorar un poco, porque
va a hacer varias descargas, va a ser varias en varios builds, aunque muchas layers los va a reutilizar,
pero este procedimiento puede demorar considerablemente más que antes.
Nuevamente empieza a hacerlo con otra arquitectura o estamos con el art.
64?
Ah, bueno, noten que ya hizo.
Bueno, todavía con esto tenemos un error y aquí me dice que falló.
Algo me dice falló exportando la imagen fue el threshold number of platform, no hace match tres o cuatro
y bueno, voy A34.
Vamos a quitar la que yo añadí manualmente.
Borremos y volvamos a ejecutar esto nuevamente.
No esperen que la primera vez a ustedes le salga todo bien a la primera.
Lo bueno es que cada vez que ya hace algún tipo de procedimientos ya queda en el caché o en el caché,
lo cual ayuda a que el proceso la próxima vez sea más rápida.
Bueno, en este caso no terminó tan uno, no fue tan lento y ya hemos terminado nuestro caso.
Y también hicimos el push.
Menos, menos push.
También esto.
Sube esto al repositorio.
Vamos a regresar a Docker hop de carga en el navegador web.
Y ahora tenemos que el ERES soporta cada una de estas versiones.
Otra cosa.
Nosotros podemos renombrarlo, pero también podemos volver a hacer esto bien sencillo.
Yo puedo presionar la flecha direccional arriba y ponerle de nombre este, pongámosle polar o otro nombre,
o el oso polar, o qué sé yo.
No sé otro nombre, pero si tenemos enter, todo eso ya se encuentra en caché y automáticamente lo empieza
a subir y eso es una forma bien rápida de ahora tener otro tag aquí arriba.
Y la ventaja es que apuntan exactamente a lo mismo, como ustedes pueden observar.
Y la ventaja es que después Docker va a identificar cuál de esas versiones es la que se adapta a mi
arquitectura y automáticamente va a seleccionar esa imagen por mí.
Súper, súper genial todo esto.
Acostumbrémonos cuando ustedes quieran poner algo así en producción que funcione en diferentes entornos.
Tengan presente esta herramienta que existe.
Vamos a dejarlo hasta ese punto.
Espero que esto les haya gustado de nuevo.
Recuerden, tengan a la mano esta documentación porque les va a servir.
Tal vez no espero que ustedes se memoricen todo esto ahorita, pero en el momento que ustedes tengan
que ser una construcción para múltiples plataformas, ya tienen un video explicando cómo lograrlo.
Dejémoslo así y los veo en la próxima clase.