Salta el contingut

Activitats amb Docker

Exercicis de Docker

Activitat 1: Volums

Anem a crear un volum Docker anomenat volum_web aquest serà un volum gestionat per Docker (named volume) i volem que estigui muntat a la ruta /usr/local/apache2/htdocs/ dins del contenidor d’Apache.

  • Crear un volum anomenat volum_web
  • Associar aquest volum a un contenidor d’Apache (fes-ho tant per un contenidor en execució com per un de nou)
  • Accedir (inspeccionar) al directori del volum des del sistema host
  • Afegir un fitxer index.html a la ruta física del volum, refrescar el navegador i comprovar que es mostra.

Activitat 2: Crear dos Dockerfile (proves i producció)

Crea dos Dockerfile per a una aplicació web bàsica amb Apache. Un Dockerfile serà per a un entorn de desenvolupament (proves) i l’altre per a un entorn de producció amb noms Dockerfile.dev i Dockerfile.prod respectivament. Quan hagis creat els Dockerfile, construeix les imatges corresponents i executa contenidors basats en aquestes imatges.

Dockerfile.dev

  • Basat en la imatge oficial d’Apache
  • Afegeix metadades com LABEL maintainer="
  • Defineix el directori de treball al directori web d’Apache (path de apache docker) per compartir fitxers entre el host i el contenidor
  • Instal·la eines de desenvolupament com nano i curl
  • Crea un volum de host (bind mount) per al directori web d’Apache (utilitza el directori creat anteriorment)
  • Exposa el port 80 per accedir a l'aplicació web

Dockerfile.prod

  • Basat en la imatge oficial d’Apache versió estable (busca una versió que no sigui latest)
  • No instal·la eines de desenvolupament addicionals
  • Defineix el directori de treball al directori web d’Apache
  • Copia els fitxers de l’aplicació web des del directori local al directori web d’Apache dins del contenidor
  • Crea un volum gestionat per Docker (named volume) per al directori web d’Apache
  • Exposa el port 80 per accedir a l'aplicació web

Activitat 3 — Crear un Docker Compose per un servidor Apache simple

  • Executar Apache via Docker Compose i entendre com funciona la definició de serveis.
  • Crear un fitxer docker-compose.yml amb el servidor apache dockerfile.dev creat anteriorment, utilitza els ports exposats i el volum creat a l’activitat 1 per muntar la landing page (index.html). Fes que el servidor sigui persistent i es reiniciï automàticament en cas de fallada.
  • Després d’executar el docker-compose, accedir a la pàgina web des del navegador.
  • Modificar algun arxiu de landing-page i verificar que s’actualitza en temps real.

Activitat 4 — Iteració avançada: crear un VirtualHost personalitzat (Apache)

Indica tots els pasos que has de fer per crear un VirtualHost personalitzat amb Apache dins d’un contenidor Docker utilitzant Dockerfile i Docker Compose. El VirtualHost ha de servir la pàgina web (landing page) des d’un domini personalitzat (ex. elmeudomini.local).

Reaprofita tots els fitxers i configuracions que has fet a les activitats anteriors.