Hiberus Dockergento: Entorno Docker para Magento

por David Abad
Hiberus Dockergento

Hiberus Dockergento es una de las herramienta más eficientes para crear entornos docker de desarrollo para proyectos Magento en sistemas Linux y Mac.

Descubre cómo funciona esta herramienta, qué ventajas aporta y cómo puedes aplicarla en tu día a día para mejorar tu productividad en el desarrollo de proyectos Magento.

Qué es Hiberus Dockergento

Hiberus Dockergento es una herramienta desarrollada en 2021/2022 por la empresa Hiberus a partir del antiguo ModestCoders Dockergento. Esta herramienta está pensada para facilitar el trabajo con proyectos Magento y Adobe Commerce en entornos locales de desarrollo, desplegando una infraestructura virtual sobre Docker muy similar a un entorno productivo.

La herramienta proporciona numerosas ventajas que hacen que el día a día en el desarrollo de proyectos Magento sea más productivo y menos problemático:

  • Fácil de instalar y actualizar.
  • Proporciona un entorno local de máximo rendimiento. 
  • Compatible con sistemas Linux y Mac (incluyendo Mac M1).
  • Compatible con un gran número de versiones de Magento, incluyendo las últimas versiones.
  • Incluye las versiones de software recomendadas por Magento para cada versión.
  • Permite trabajar con conexión segura HTTPS (SSL).
  • Proporciona un CLI con comandos de terminal que facilitan el trabajo con proyectos Magento.
  • Permite interceptar y visualizar fácilmente los correos salientes.
  • Incorpora herramientas útiles cómo N98-Magerun, Magento Cloud CLI, NPM, Grunt…

Hiberus Dockergento trabaja sobre la herramienta de virtualización DockerEl siguiente diagrama muestra la infraestructura de contenedores Docker que construye la herramienta para trabajar con nuestros proyectos Magento:

Hiberus Dockergento

  • Hitch Proxy: Proxy que permite trabajar con conexión segura HTTPS (SSL).
  • Varnish: Servicio de almacenamiento de la Full Page Cache de Magento.
  • Nginx: Servidor web que atiende las peticiones y devuelve el contenido correspondiente.
  • PHP: Motor de programación utilizado por Magento, incluyendo todas las extensiones necesarias.
  • Maria DB: Base de datos relacional para el almacenamiento de datos de Magento.
  • Rabbit MQ: Gestor de colas de mensajes MQ para tareas asíncronas. (Más información en el artículo recomendado abajo)
  • Mailhog: Bandeja de entrada de correo virtual, que intercepta todos los correos salientes y permite visualizarlos desde el navegador. (Más información en el artículo recomendado abajo)
  • Elasticsearch / Opensearch: Motor de búsqueda textual, utilizado para la indexación del catálogo de Magento.
  • Redis: Servicio de base de datos volátil utilizado para almacenar sesiones y caché de segundo nivel.

Descargar e instalar Hiberus Dockergento

1. Descargar e instalar Docker y Docker-compose (si no lo tienes instalado).
# INSTALACIÓN DOCKER EN UBUNTU

### Instalar dependencias
sudo apt-get install curl gnupg ca-certificates lsb-release

### Añadir el repositorio de paquetes de Docker a Ubuntu
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] 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

### Instalar Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-compose

### Ajustar permisos
sudo usermod -aG docker $USER
sudo chown root:docker /var/run/docker.sock
sudo chown -R root:docker /var/run/docker

(Para Mac será necesario instalar Docker Desktop)

2. Descargar e instalar Hiberus Dockergento:
curl https://raw.githubusercontent.com/hiberus-magento/hiberus-dockergento/main/installer.sh | bash

Cómo crear un nuevo entorno local

Crear un entorno para un proyecto nuevo

Hiberus Dockergento incluye un comando “create-project” que permite crear fácilmente un entorno local para un proyecto nuevo

hm create-project

Al lanzar el comando, se iniciará un asistente que nos preguntará por las características del proyecto que queremos (versión de Magento, dominio, idioma, moneda, datos de administrador, etc.). Una vez finalizado el asistente, tendremos un nuevo entorno Magento totalmente operativo.

Crear un entorno para un proyecto existente

Hiberus Dockergento incluye un comando “setup” que permite crear fácilmente un entorno local para un proyecto existente

cd <your_project>
hm setup

Para lanzar este comando, debemos acceder al directorio raíz donde se encuentra el código del proyecto. Una vez lanzado el comando setup, la herramienta detectará automáticamente la versión de Magento y permitirá dos opciones de instalación:

  • Instalar utilizando un dump de base de datos: Instalación cargando un fichero SQL con un dump de la base de datos del proyecto existente.
  • Instalar desde cero: Instalación sin cargar una base de datos existente. Se creará una nueva base de datos limpia, utilizando el instalador de Magento.

Una vez finalizado el proceso, tendremos el nuevo entorno local totalmente operativo para trabajar con nuestro proyecto Magento.

Comandos más importantes

Iniciar entorno
hm start
Reiniciar entorno
hm restart
Detener entorno
hm stop
Crear entorno
(Proyecto nuevo)
hm create-project
Crear entorno
(Proyecto existente)
hm setup
Acceder a contenedor PHP
hm bash
Acceder a base de datos
hm mysql
Lanzar Magento CLI
hm magento [...]
Lanzar Composer
hm composer [...]
Activar/desactivar debugger
hm debug-on
hm debug-off
Activar/desactivar Varnish
hm varnish-on
hm varnish-off
Actualizar Hiberus Dockergento
hm update
Consultar comandos disponibles
hm --help

Puedes consultar el listado completo de comandos disponibles en la documentación oficial.

Déjanos tu email para recibir contenido interesante en tu bandeja de entrada, cada mes.

¡No hacemos spam!

Otros artículos