Docker - Contenedores¶
Introducci贸n a Docker¶
Docker es una plataforma de contenedores que permite empaquetar aplicaciones y sus dependencias en contenedores ligeros y portables. Esto facilita el desarrollo, despliegue y escalado de aplicaciones.
Conceptos fundamentales¶
Contenedores¶
Los contenedores son entornos aislados que contienen todo lo necesario para ejecutar una aplicaci贸n.
Im谩genes¶
Las im谩genes son plantillas de solo lectura que se utilizan para crear contenedores.
Dockerfile¶
Un Dockerfile es un script que contiene instrucciones para construir una imagen.
# Dockerfile de ejemplo
FROM ubuntu:20.04
RUN apt-get update && apt-get install -y nginx
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Comandos b谩sicos¶
Gesti贸n de im谩genes¶
# Construir una imagen
docker build -t mi-aplicacion .
# Listar im谩genes
docker images
# Eliminar una imagen
docker rmi mi-aplicacion
Gesti贸n de contenedores¶
# Ejecutar un contenedor
docker run -d -p 8080:80 mi-aplicacion
# Listar contenedores
docker ps
# Detener un contenedor
docker stop <container_id>
# Eliminar un contenedor
docker rm <container_id>
Docker Compose¶
Docker Compose permite definir y ejecutar aplicaciones multi-contenedor.
# docker-compose.yml
version: '3.8'
services:
web:
build: .
ports:
- "8080:80"
db:
image: postgres:13
environment:
POSTGRES_DB: myapp
POSTGRES_USER: user
POSTGRES_PASSWORD: password
Casos de uso¶
- Desarrollo local
- Despliegue de aplicaciones
- Microservicios
- CI/CD pipelines
Pr贸ximos pasos¶
En las siguientes secciones exploraremos: - Optimizaci贸n de im谩genes - Redes de Docker - Vol煤menes y persistencia - Seguridad en contenedores - Orquestaci贸n con Kubernetes
Recursos adicionales¶
Documentaci贸n oficial¶
- Sitio web oficial: docker.com
- Documentaci贸n: docs.docker.com
- GitHub: github.com/docker
- Docker Hub: hub.docker.com
Comunidad¶
- Reddit: r/docker
- Stack Overflow: stackoverflow.com/questions/tagged/docker
- Foros oficiales: forums.docker.com