Instalación Docker
¿Qué es Docker?
Docker es una plataforma de software que permite crear, desplegar y gestionar aplicaciones en contenedores. Los contenedores son entornos ligeros y portátiles que contienen todo lo necesario para ejecutar una aplicación, incluyendo el código, las dependencias, las bibliotecas y el sistema operativo. Esto asegura que la aplicación se ejecute de manera consistente en cualquier entorno, ya sea en la máquina del desarrollador, en un servidor de producción, o en la nube.
Componentes Clave de Docker
- Docker Engine: El motor de Docker es el núcleo de la plataforma y se encarga de crear, ejecutar y gestionar los contenedores.
- Docker Hub: Un repositorio en línea donde los desarrolladores pueden compartir y descargar imágenes de contenedores preconfiguradas.
- Dockerfile: Un archivo de texto que contiene instrucciones sobre cómo construir una imagen de Docker. Define los pasos necesarios para instalar el software y sus dependencias.
- Imágenes de Docker: Plantillas inmutables que contienen un sistema de archivos y todas las dependencias necesarias para ejecutar una aplicación.
- Contenedores de Docker: Instancias en ejecución de imágenes de Docker. Son ligeros y se ejecutan de manera aislada unos de otros.
Ventajas de Usar Docker
- Portabilidad: Los contenedores se pueden ejecutar en cualquier lugar donde Docker esté instalado, asegurando que las aplicaciones se comporten de la misma manera en diferentes entornos.
- Aislamiento: Cada contenedor funciona de manera aislada, lo que significa que los conflictos de dependencias se eliminan.
- Eficiencia: Los contenedores son más ligeros que las máquinas virtuales tradicionales porque comparten el núcleo del sistema operativo.
- Despliegue Rápido: Las aplicaciones se pueden desplegar rápidamente y escalar fácilmente.
Casos de Uso
- Desarrollo y Pruebas: Docker permite a los desarrolladores crear entornos de desarrollo replicables.
- Despliegue en Producción: Facilita la implementación continua y la integración continua (CI/CD).
- Microservicios: Docker es ideal para arquitecturas de microservicios, donde cada servicio puede ser empaquetado y gestionado de manera independiente.
Instalación de Docker
Set up Docker’s apt repository.
1
2
3
4
5
6
7
8
9
10
11
12
13
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
To install the latest version, run:
1
2
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Verify that the Docker Engine installation is successful by running the hello-world image.
1
sudo docker run hello-world
Ejecuta tu primer contenedor
- Ejecuta el siguiente comando para correr una instancia del contenedor hello-world:
1
docker run hello-world
Este comando descarga una imagen llamada hello-world desde Docker Hub, la ejecuta en un contenedor y muestra un mensaje de saludo.
Comandos Docker
Trabajar con imágenes:
En Docker, las imágenes son plantillas que se utilizan para crear contenedores. Una imagen incluye todo lo necesario para ejecutar una aplicación: el código, las dependencias, las bibliotecas y el sistema operativo. Aquí tienes una guía sobre cómo trabajar con imágenes de Docker:
Comandos Básicos para imágenes de Docker
Para ver todas las imágenes disponibles en tu sistema:
1
docker images
Este comando mostrará una lista de todas las imágenes, incluyendo el REPOSITORY, TAG, IMAGE ID, CREATED y SIZE.
Descargar imágenes:
Para descargar una imagen desde Docker Hub:
1
docker pull <nombre_imagen>:<tag>
Ejemplo:
1
docker pull ubuntu:latest
Construir una Imagen desde un Dockerfile:
Crea un archivo Dockerfile y añade las instrucciones para construir tu imagen. Luego, ejecuta:
1
docker build -t <nombre_imagen>:<tag> .
Ejemplo:
1
docker build -t my-python-app:latest .
Eliminar Imágenes:
Para eliminar una imagen:
1
docker rmi <image_id>
Ejemplo:
1
docker rmi d1b55fd07600
Listar contenedores:
- Para ver los contenedores en ejecución:
1
docker ps
- Para ver todos los contenedores, incluidos los detenidos:
1
docker ps -a
Descargar imágenes:
- Descarga una imagen desde Docker Hub, por ejemplo, Ubuntu:
1
docker pull hello-world
- Ejecutar comandos en un contenedor:
1
docker run -it hello-world /bin/bash
- Esto abre una terminal dentro del contenedor donde puedes ejecutar comandos de Linux.
Instalación de …
Una vez ya está instalado Docker instalamos la aplicación:
1
2
docker run --name some-mariadb -d -e MYSQL_ROOT_PASSWORD=hellodocker -e MYSQL_DATABASE=easyappointments mariadb:latest
docker run --name some-easyappointments -d --link some-mariadb:db -p 8888:8888 jamrizzi/easyappointments:latest
Usage Environment Variable Deafult Value BASE_URL “http://localhost:8888” LANGUAGE “english” DEBUG false DB_HOST “db” DB_NAME “easyappointments” DB_USERNAME “root” DB_PASSWORD “hellodocker” GOOGLE_SYNC_FEATURE false GOOGLE_PRODUCT_NAME GOOGLE_CLIENT_ID GOOGLE_CLIENT_SECRET GOOGLE_API_KEY TZ “UTC”
