Instalación de moodle en ubuntu

Que tal, en este articulo veremos como instalar el LMS Moodle sobre un server Ubuntu 18 recién instalado.

Empezamos actualizando el servidor

sudo apt update -y && sudo apt upgrade -y

Diez mil años después…

Después de haber terminado de actualizar toca instalar apache

sudo apt install apache2

Arrancamos apache

sudo systemctl start apache2

Verificamos que el servidor esta corriendo

sudo systemctl status apache2
Presionen Control + C para salir de esa pantalla

Instalaremos Mysql

Sudo apt install mysql-client mysql-server php libapache2-mod-php

Después de decirle que sí, iniciará la instalación

La salida confirmará la instalación

Hay que levantar el servicio de Mysql

sudo systemctl start mysql
sudo systemctl enable mysql

Vamos a configurar los datos de acceso de mysql

Sudo mysql_secure_installation

Nos preguntara si queremos iniciar la configuración de acceso de mysql, presionen Y

Luego tienen  que elegir la fortaleza del password para el usuario root

Después de eso les pedirá el nuevo password, coloquen el que deseen y presionen Y

Seleccionen las siguientes respuestas

Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]:  Y
Reload privilege tables now? [Y/n]:  Y
Al final nos dirá que todo salio bien

Reiniciemos mysql

systemctl restart mysql

Vamos a crear la base de datos que moodle usará

Creamos la base que Moodle usuará

Ingresemos a Mysql

sudo mysql -u root -p

Crearemos la base de datos llamada moodledb

CREATE DATABASE moodledb;

Creamos un usuario para la base

CREATE USER  'moodle@localhost'  IDENTIFIED BY  'tu_password;

tu_password es el password que ustedes eligirán para el usuario moodle de mysq

Le damos todos los privilegios a ese usuario

GRANT ALL ON moodledb.* TO 'moodle@localhost' IDENTIFIED BY 'tu_password' WITH GRANT OPTION;

Aplicamos la configuración

FLUSH PRIVILEGES;
EXIT;

Habiendo terminado la parte de mysql, vamos a instalar todas las dependencias que Moodle necesita.

sudo apt install graphviz aspell ghostscript clamav php7.2-pspell php7.2-curl php7.2-gd php7.2-intl php7.2-mysql php7.2-xml php7.2-xmlrpc php7.2-ldap php7.2-zip php7.2-soap php7.2-mbstring

En mi caso me marcaron errores de dependencias al instalar algunas librerías. Después de batallar literalmente durante horas, conseguí resolverlo con el siguiente comando :

sudo add-apt-repository ppa:ondrej/php

Instalando Moodle

Descarguen la versión más reciente de Moodle. (Asegúrense de buscar la más reciente).

sudo wget https://download.moodle.org/download.php/direct/stable38/moodle-latest-38.tgz

Descomprimamos el archivo

sudo tar -zxvf moodle-latest-38.tgz

Ahora existe una carpeta llamada Moodle, vamos a mover esa carpeta al directorio donde apache gestiona los sitios

sudo mv moodle /var/www/html/moodle

Vamos a crear el directorio moodledata y dejarlo fuera de las carpetas públicas de apache.

sudo mkdir /var/www/moodledata

Resistan, ya vamos por la mitad ….. 🙂

Configuremos los permisos

sudo chown -R www-data:www-data /var/www/html/moodle/
sudo chmod -R 755 /var/www/html/moodle/
sudo chown www-data /var/www/moodledata

Configuración de apache

Ahora vamos a moverle las tripas a apache para que pueda saber a dónde dirigirse cuando tipeemos la url de nuestra instancia de Moodle.

Creamos el host virtual para Moodle

sudo vim /etc/apache2/sites-available/moodle.conf

Pegue el siguiente texto en el archivo

<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/moodle/
ServerName localhost/elearning
ServerAlias elearning

<Directory /var/www/html/moodle/>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Si están haciendo la instalación en un hosting con dominio, deben colocar ese dominio en las líneas ServerName y ServerAlias. Por ejemplo:

ServerName example.com
ServerAlias www.example.com

Cierren el editor Vim,  lo hacen escribiendo :q y enter.

Como yo lo estoy haciendo en un server local lo dejaré como en el primer ejemplo. Le decimos a apache que tome en cuenta ese host virtual

sudo a2enmod rewrite
sudo a2ensite moodle.conf

Para que los cambios surtan efecto reiniciamos apache

sudo systemctl restart apache2

Terminando de instalar Moodle

Desde un explorador accederemos a la dirección de nuestro server en la ruta de Moodle (ustedes cámbienla por su propia ip)

10.1.10.182/moodle

Aparecerá el instalador de Moodle
Confirmemos las rutas
Seleccionamos el motor de base de datos, para este caso Mysql
Agregamos los parámetros de configuración de la base de datos

Aparecerá el acuerdo y deben aceptarlo.

Nos muestra las comprobaciones del servidor, clic en continuar.
Tardara un buen rato y nos mostrará el resultado de la instalación para cada modulo.
Por ultimo deberan llenar los datos de acceso al panel de administración de moodle

Listo, ya tiene instalado Moodle.

Related Posts Plugin for WordPress, Blogger...

publicidad

Deja una respuesta

Tu dirección de correo electrónico no será publicada.