Post

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”

This post is licensed under CC BY 4.0 by the author.