En aquesta secció, aprendrem a crear el nostre primer contenidor Docker. Aquest és un pas fonamental per començar a treballar amb Docker i entendre com funcionen els contenidors. Seguirem una sèrie de passos per assegurar-nos que comprenem cada part del procés.
Objectius
- Entendre què és un contenidor Docker.
- Aprendre a crear i executar un contenidor Docker.
- Familiaritzar-se amb les comandes bàsiques per gestionar contenidors.
Què és un contenidor Docker?
Un contenidor Docker és una unitat estàndard de programari que empaqueta el codi i totes les seves dependències perquè l'aplicació s'executi de manera ràpida i fiable en diferents entorns informàtics. Els contenidors són lleugers i proporcionen una manera aïllada d'executar aplicacions.
Passos per crear el teu primer contenidor Docker
- Instal·lar Docker
Abans de començar, assegura't que Docker està instal·lat al teu sistema. Si no ho has fet encara, segueix les instruccions del mòdul anterior sobre Instal·lant Docker.
- Executar un contenidor Docker
Per executar un contenidor Docker, utilitzarem la imatge hello-world
, que és una imatge molt senzilla dissenyada per provar que Docker està funcionant correctament.
Explicació del codi:
docker run
: Aquesta comanda crea un nou contenidor i l'executa.hello-world
: Aquesta és la imatge que Docker utilitzarà per crear el contenidor. Si la imatge no està disponible localment, Docker la descarregarà del Docker Hub.
- Entendre la sortida
Després d'executar la comanda anterior, hauríeu de veure una sortida similar a aquesta:
Aquesta sortida indica que Docker ha creat i executat correctament el contenidor.
- Llistar els contenidors
Per veure els contenidors que estan actualment en execució, utilitza la comanda següent:
Per veure tots els contenidors, inclosos els que no estan en execució, utilitza:
Explicació del codi:
docker ps
: Llista els contenidors en execució.docker ps -a
: Llista tots els contenidors, inclosos els aturats.
- Executar un contenidor amb una aplicació més complexa
Ara que hem provat amb hello-world
, provem amb una aplicació més complexa. Utilitzarem la imatge nginx
, que és un servidor web popular.
Explicació del codi:
-d
: Executa el contenidor en segon pla (detached mode).-p 8080:80
: Mapeja el port 80 del contenidor al port 8080 de la màquina host.nginx
: La imatge que utilitzarem per crear el contenidor.
- Verificar l'execució del contenidor
Obre el teu navegador web i ves a http://localhost:8080
. Hauries de veure la pàgina per defecte de Nginx, la qual cosa indica que el contenidor està funcionant correctament.
- Aturar un contenidor
Per aturar el contenidor Nginx, primer necessitem obtenir el seu ID o nom. Utilitza docker ps
per obtenir aquesta informació i després atura el contenidor amb la comanda següent:
Explicació del codi:
docker stop
: Atura el contenidor especificat.<container_id>
: L'ID o nom del contenidor que vols aturar.
- Eliminar un contenidor
Per eliminar un contenidor, primer ha d'estar aturat. Després, utilitza la comanda següent:
Explicació del codi:
docker rm
: Elimina el contenidor especificat.<container_id>
: L'ID o nom del contenidor que vols eliminar.
Exercicis pràctics
Exercici 1: Crear i executar un contenidor
- Executa un contenidor utilitzant la imatge
alpine
, que és una imatge molt lleugera basada en Alpine Linux. - Llista els contenidors en execució.
- Atura el contenidor.
Solució:
Exercici 2: Executar un contenidor amb un servidor web
- Executa un contenidor utilitzant la imatge
httpd
, que és un servidor web Apache. - Mapeja el port 80 del contenidor al port 8081 de la màquina host.
- Verifica que el servidor web està funcionant accedint a
http://localhost:8081
.
Solució:
Resum
En aquesta secció, hem après a crear i executar el nostre primer contenidor Docker. Hem utilitzat imatges senzilles com hello-world
i nginx
per entendre el procés bàsic de creació i gestió de contenidors. També hem après a llistar, aturar i eliminar contenidors. Amb aquests coneixements bàsics, estem preparats per aprofundir més en el món de Docker en les següents seccions del curs.
Docker: De Principiant a Avançat
Mòdul 1: Introducció a Docker
- Què és Docker?
- Instal·lant Docker
- Arquitectura de Docker
- Comandes bàsiques de Docker
- Entenent les imatges de Docker
- Creant el teu primer contenidor Docker
Mòdul 2: Treballant amb imatges Docker
- Docker Hub i Repositoris
- Construint imatges Docker
- Conceptes bàsics de Dockerfile
- Gestionant imatges Docker
- Etiquetant i pujant imatges
Mòdul 3: Contenidors Docker
- Executant contenidors
- Cicle de vida del contenidor
- Gestionant contenidors
- Xarxes a Docker
- Persistència de dades amb volums
Mòdul 4: Docker Compose
- Introducció a Docker Compose
- Definint serveis a Docker Compose
- Comandes de Docker Compose
- Aplicacions multi-contenidor
- Variables d'entorn a Docker Compose
Mòdul 5: Conceptes avançats de Docker
- Exploració profunda de xarxes Docker
- Opcions d'emmagatzematge de Docker
- Millors pràctiques de seguretat de Docker
- Optimitzant imatges Docker
- Registre i monitoratge de Docker
Mòdul 6: Docker en producció
- CI/CD amb Docker
- Orquestrant contenidors amb Docker Swarm
- Introducció a Kubernetes
- Desplegant contenidors Docker a Kubernetes
- Escalat i equilibrat de càrrega