Moodle y MariaDB dockerizado
Aprenderás a desplegar Moodle y MariaDB dockerizado en AWS
Requisitos
- Tener una instancia en Amazon AWS con sistema operativo Ubuntu 20.04.
- Tener instalado Docker.
- Tener un dominio para que pueda ser accedido desde internet (es opcional).
Instalar Apache
Actualiza el índice de los paquetes locales:
sudo apt update
Instala apache2 y habilita módulos del proxy:
sudo apt install apache2 && sudo a2enmod proxy proxy_http proxy_balancer lbmethod_byrequests
Configurar subdominio y virtualhost
Ir al directorio se sitios habilitados de apache:
cd /etc/apache2/sites-available/
Renombra el archivo 000-default.conf por el nombre de tu dominio, para este caso práctico se usó midominio.co.conf:
sudo mv 000-default.conf midominio.co.conf
Edita el contenido:
sudo nano midominio.co.conf
Con las siguientes líneas:
Reinicia el servicio de apache:
sudo systemctl restart apache2
Cómo desplegar Moodle con MariaDB dockerizado en AWS
Moodle es una solución de gestión de aprendizaje de código abierto (LMS) muy popular para la entrega de cursos y programas de aprendizaje electrónico. En esta ocasión aprenderá como instalar una imagen de Bitnami con Moodle y MariaDB. Aquí les presento la arquitectura que nos servirá de guía para este tutorial.
¿Por qué Bitnami?
Bitnami provee imágenes con soporte para errores y actualizaciones constantes.
¿Cómo usar la imagen Bitnami?
Crea una red para la aplicación y la base de datos, para este ejemplo debe crear una red con el siguiente nombre moodle-tier. Este nombre será asociado más adelante.
docker network create moodle-tier
Crea un volumen para la persistencia de datos de MariaDB, para este ejemplo debe crear un volumen con el siguiente nombre mariadb-storage. Este nombre será asociado más adelante.
docker volume create --name mariadb-storage
Crea un contenedor para MariaDB, aquí se deberá asociar el nombre de red creado anteriormente y el volumen. Si usted no desea exponer la base de datos para que esta pueda ser manipulada por algún gestor de base de datos como mysql workbench omita la línea -p 3306:3306.
docker run -d --name mariadb-server -p 3306:3306 -e MARIADB_USER=admin -e MARIADB_DATABASE=bd_moodle -e MARIADB_ROOT_PASSWORD=YOU_PASSWORD -e MARIADB_PASSWORD=YOU_PASSWORD --net moodle-tier -v mariadb-storage:/bitnami bitnami/mariadb:10.5.17
Crea un volumen para la persistencia de datos de Moodle, para este ejemplo debe crear un volumen con el siguiente nombre moodle-storage. Este nombre será asociado más adelante.
docker volume create --name moodle-storage
Crea un contenedor para Moodle, aquí se deberá asociar el nombre de red creado anteriormente y el volumen.
docker run -d --name moodle-server -p 80:80 -p 443:443 -e MARIADB_HOST=mariadb-server -e MOODLE_DATABASE_USER=admin -e MOODLE_DATABASE_NAME=bd_moodle -e MOODLE_DATABASE_PASSWORD=YOU_PASSWORD --net moodle-tier -v moodle-storage:/bitnami bitnami/moodle:3.5.1
Monitorea el estado de la instalación de Moodle ejecutando el siguiente comando:
watch docker logs moodle-server
Para salir de la consola de monitoreo en una terminal linux presiona las teclas «control+c».
Visualiza los datos de Moodle:
sudo ls -la /var/lib/docker/volumes/moodle-storage/_data/moodle
Valida que el servicio está operando:
curl -i http://127.0.0.1:80/
Si todo está bien podrás ingresar en el navegador a http://localhost o a http://midominio.co y observarás la siguiente pantalla:
Configuración
Los datos de acceso por defecto son:
- Username: user
- Password: bitnami
- Email: user@example.com
Para cambiar los datos de acceso por defecto, deberás iniciar sesión. Luego dar clic en el avatar del usuario > profile > edit profile. Allí usted podrás editar los datos.