Personaliza el idioma de la ballena de Docker

DockerBeginner
Practicar Ahora

Introducción

¡Ahoy, lingüista de Docker! Ya has dominado el arte de hacer hablar a la ballena de Docker, pero ¿podrás hacer que sea políglota? En este desafío, crearás una imagen de Docker que utiliza variables de entorno para cambiar el idioma del saludo de la ballena. ¡Prepárate para darle a nuestra amiga cetácea una voz global!

Este es un Desafío (Challenge), el cual difiere de un Laboratorio Guiado en que deberás intentar completar la tarea de forma independiente, en lugar de seguir pasos detallados de aprendizaje. Los desafíos suelen tener cierta dificultad. Si te quedas atascado, puedes debatir con Labby o consultar la solución. Los datos históricos muestran que este es un desafío de nivel principiante con una tasa de aprobación del 99%. Ha recibido una tasa de valoraciones positivas del 99% por parte de los estudiantes.

Crea una ballena políglota

Imagina que estás desarrollando una aplicación multilingüe y necesitas una forma de probar rápidamente tu configuración de Docker en diferentes entornos de idioma. ¡Ahí es donde entra nuestra ballena políglota!

En este desafío, llevarás tus habilidades de Docker al siguiente nivel creando un contenedor flexible y consciente del idioma. Utilizarás variables de entorno —una herramienta fundamental en el ecosistema Docker— para cambiar dinámicamente el idioma del saludo de nuestra simpática ballena.

Antes de sumergirnos, preparemos tu entorno de trabajo. Dirígete al directorio ~/project/docker en tu terminal. Allí encontrarás algunos archivos iniciales cortesía de tu mentor de Docker. Estos archivos te darán una ventaja inicial, permitiéndote concentrarte en los conceptos centrales de este reto.

¿Listo para darle a nuestra amiga marina una voz internacional? ¡Hagamos olas en el mundo de los contenedores multilingües!

Tareas

Tu misión lingüística, si decides aceptarla, consiste en:

  1. Examinar el script entrypoint.sh proporcionado para entender cómo gestiona los diferentes idiomas.
  2. Modificar el Dockerfile para incorporar el script entrypoint.sh y configurar las variables de entorno.
  3. Construir una imagen de Docker a partir de tu Dockerfile completado.
  4. Ejecutar contenedores basados en tu imagen, experimentando con diferentes configuraciones de idioma.

Requisitos

Para completar con éxito este desafío, debes:

  1. Usar docker/whalesay como imagen base en tu Dockerfile.
  2. Crear una variable de entorno llamada WHALE_LANGUAGE en tu Dockerfile, con el valor predeterminado "English".
  3. Utilizar la instrucción COPY en tu Dockerfile para copiar el script entrypoint.sh proporcionado al directorio raíz (/) de tu imagen, nombrándolo /entrypoint.sh. Asegúrate de que tenga permisos de ejecución y establécelo como el ENTRYPOINT.
  4. Construir tu imagen con la etiqueta polyglot-whale.
  5. Ejecutar tu contenedor configurando la variable de entorno para que la ballena hable tanto en inglés como en español.
  6. Ejecutar todos los comandos dentro del directorio ~/project/docker.

Recuerda que el script entrypoint.sh ya te ha sido proporcionado. Tu tarea principal es crear un Dockerfile que utilice correctamente este script y permita la personalización del idioma a través de variables de entorno.

Ejemplo

Cuando ejecutes tu contenedor con el idioma español seleccionado, deberías ver una salida similar a esta:

docker run -e WHALE_LANGUAGE=Spanish polyglot-whale
 _________
< ¡Hola! >
 ---------
    \
     \
      \
                    ###        .
              ### ### ###       ==
           ### ### ### ###      ===
       /""""""""""""""""___/ ===
  ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
       \______ o          __/
        \    \        __/
          \____\______/

Y cuando se ejecute con la configuración predeterminada en inglés:

docker run polyglot-whale
 _________
< Hello! >
 ---------
    \
     \
      \
                    ###        .
              ### ### ###       ==
           ### ### ### ###      ===
       /""""""""""""""""___/ ===
  ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ /  ===- ~~~
       \______ o          __/
        \    \        __/
          \____\______/
✨ Revisar Solución y Practicar

Resumen

En este desafío, has ampliado tus conocimientos de Docker creando una imagen que utiliza variables de entorno para su configuración. Has aprendido a:

  1. Utilizar variables de entorno en un Dockerfile para establecer valores por defecto.
  2. Crear un script de shell sencillo para que actúe como punto de entrada (entrypoint) de tu contenedor.
  3. Sobrescribir variables de entorno al ejecutar un contenedor.

Estas habilidades son fundamentales para crear imágenes de Docker flexibles y configurables que puedan adaptarse a diferentes entornos o casos de uso. A medida que continúes tu camino con Docker, recuerda que las variables de entorno son una herramienta poderosa para hacer que tus contenedores sean más versátiles y fáciles de gestionar en diversos escenarios de despliegue. ¡Sigue explorando y disfruta comunicándote con la ballena!