En este tutorial explico lo que es Docker, y cómo podemos utilizarlo para probar servicios dentro de nuestro sistema operativo Debian. Decir que Docker sirve a modo de hypervisor, es decir, para virtualizar máquinas virtuales, pero con la característica que sólo funcionan los servicios que hayas configurado en Docker. Esto es una gran ventaja ya que hasta hace algún tiempo configurar servicios sueltos de forma muy optimizada era un problema, yo instalé Gentoo en el instituto y era un dolor de cabeza. Todo esto y más es lo que resuelve este contenedor de máquinas virtuales.
Instalamos paquetes
Actualizamos los paquetes de Debian:
sudo apt-get update
Instalamos los diferentes componentes necesarios para instalar Docker:
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
Instalo Docker
Obtengo la clave privada GPG de Docker:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Añado los repositorios Docker en sources.list
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Volvemos a actualizar los repositorios:
sudo apt-get update
Instalamos los paquetes Docker en Debian:
sudo apt-get install docker-ce docker-ce-cli containerd.io
Miramos las versiones docker disponibles:
apt-cache madison docker-ce
En mi caso aparece lo siguiente:
<p>docker-ce | 5:20.10.8~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable amd64 Packages</p>
<p>docker-ce | 5:20.10.7~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable amd64 Packages</p>
<p>docker-ce | 5:20.10.6~3-0~debian-bullseye | https://download.docker.com/linux/debian bullseye/stable amd64 Packages</p>
Lo instalamos con el siguiente comando:
sudo apt-get install docker-compose docker-ce=5:20.10.8~3-0~debian-bullseye docker-ce-cli=5:20.10.8~3-0~debian-bullseye containerd.io
PASOS EXTRA
Creamos el grupo docker:
sudo groupadd docker
Añadimos el usuario al grupo Docker:
sudo usermod -aG docker $USER
Tipeamos el siguiente comando:
newgrp docker
Escribimos el siguiente comando:
docker run hello-world
INICIAMOS DOCKER AL INICIAR EL EQUIPO
Para habilitar Docker al inicio, escribimos lo siguiente:
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
Configuramos el hypervisor
Creamos la carpeta docker y el archivo docker-compose.yml:
version: '2'
services:
mysql:
image: mysql:5.7
restart: always
ports:
- 8081:3306
environment:
MYSQL_USER: wordpress
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- mysql
image: wordpress
ports:
- 8080:80
restart: always
environment:
WORDPRESS_DB_HOST: mysql:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
HACEMOS FUNCIONAR EL CONTENEDOR
Editamos el fichero /etc/hosts, añadimos lo siguiente:
127.0.0.1 localhost
127.0.0.1 content.local
Creamos la carpeta proxy:
docker network create proxy
Echamos a andar el room:
docker-compose up -d
FUENTES:
https://docs.docker.com/engine/install/linux-postinstall/
https://neliosoftware.com/es/blog/como-usar-docker-para-desarrollar-en-wordpress/
Gracias por visitar mi blog de informática, mi nombre es Tomás y soy formador y desarrollador web. Si quiere usted dejarme alguna sugerencia, ayuda o quiere un servicio de formación estoy escuchando ofertas en tomas.gonzalez@infogonzalez.com, en Facebook a https://www.facebook.com/Infogonzalez estoy deseando escucharle. Su duda o sugerencia NO molesta.