Moodle – Descomplicando a instalação

Moodle – Descomplicando a instalação

Caro leitor, nesse artigo vamos tentar descomplicar a instalação do ambiente virtual de aprendizado Moodle para quem está iniciando o uso desta plataforma.

Para isso, utilizaremos o Vagrant para provisionar nosso ambiente de instalação, configurando duas máquinas, uma como servidor e outra como banco, sendo que na máquina servidor iremos hospedar o ambiente Moodle propriamente dito e na máquina banco faremos a configuração de seu respectivo banco de dados.

Antes de iniciar com o Vagrant, será necessário fazer o download e a instalação do Virtualbox que será o hypervisor em nossos testes. Podemos realizar o download do Virtualbox, aqui.

Feito o download, instale o Vagrant no diretório atual executando o comando:

 sudo apt install vagrant 

Após a instalação do Vagrant digite o seguinte comando:

vagrant init 

Esse comando é importante porque fará com que o Vagrant possa criar o arquivo padrão vagranfile para que seja possível realizar a criação e a configuração das nossas máquinas virtuais.

O passo seguinte é utilizar o editor de texto de sua preferência para abrir o arquivo vagrantfile. Neste artigo, será utilizado o editor vim, mas isso é opcional.

 sudo vim Vagrantfile 

Depois de abrir o arquivo, é necessário editá-lo conforme a imagem abaixo:

Agora já temos as máquinas virtuais que utilizaremos para configurar o ambiente MoodleTendo configurado o vagrantfile, basta salvar e sair do arquivo. Assim que salvar e sair do arquivo, execute um

 vagrant up 

Essa ação é necessária para que as máquinas sejam atualizadas e para que possamos acessá-las via ssh.

Agora sim, com as máquinas virtuais necessárias para a instalação do Moodle, vamos colocar a mão na massa.

Para ter acesso ao servidor, execute o comando:

 vagrant ssh servidor 

Uma vez com acesso ao servidor, precisamos definir uma senha para o usuário root. Para isso execute o comando:

 sudo su -

Na sequência aperte Enter em seguida execute:


passwd 

Então, insira a senha teste O passo seguinte é realizar a instalação do servidor web Apache. Execute-o com o comando:

 apt install apache2 -y 

Como já estamos logados com o usuário root da máquina, não há a necessidade de utilizar o comando sudo. Para que o Moodle funcione é necessário a instalação do PHP e também de algumas de suas extensões. Para realizar sua instalação, será necessário executar os comandos na seguinte ordem:

apt -y install php php-common
apt -y install php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd  php-mbstring php-curl php-xml php-pear php-bcmath

Após concluir a instalação do PHP, será necessário instalar as configurações básicas do Apache. Para isso, devemos instalar a biblioteca libapache com o seguinte comando:

apt -y install libapache2-mod-php

Com a biblioteca libapache instalada, o passo seguinte será habilitar o módulo apache  e em seguida reiniciar o Apache com o comando:

 a2enmod php7.3

systemctl restart apache2 

Com as configurações básicas do Apache concluídas, nos próximos passo iremos usar muito o editor de texto. Poderá ser utilizado o editor de texto de sua preferência, e como já mencionado anteriormente, aqui utilizamos o vim. Para instalá-lo, execute:

 apt -y install vim 

É necessário configurar agora o virtualhost para finalizar as configurações do Apache. Vá até os diretórios onde se encontram o arquivos que vamos configurar:

 cd /etc/apache2/sites-enabled
cd /etc/apache2/sites-avaliable

 

No diretório, é preciso fazer uma cópia do arquivo 000-default.conf acrescentando o nome moodle.conf, desta forma:

cp 000-default.conf /etc/apache2/sites-enabled/moodle.conf
cp 000-default.conf /etc/apache2/sites-avaliable/moodle.conf

Entre no arquivo para editá-lo:

 vim moodle 

A imagem abaixo mostra exatamente o conteúdo padrão que será exibido:

Vamos editá-lo com as seguintes informações: Adicionar o nome do servidor  ServerName moodle.172-27-11-10.nip.io e o Documentroot /var/www/moodle,  conforme a imagem abaixo:

Só mais alguns passos e nossa máquina servidora web estará pronta.

Feita a configuração do virtualhost, devemos baixar o Moodle e armazená-lo em /var/www/. Depois de baixar o Moodle, devemos extrair os arquivos executando os comandos na seguinte ordem:

cd /var/www/

wget https://download.moodle.org/download.php/direct/stable39/moodle-latest-39.tgz

tar -xvf moodle-latest-39.tgz 

Após baixar o Moodle e extrair os arquivos, vamos entrar em seu diretório:

 cd moodle/

Nesse diretório vamos copiar e renomear o arquivo config-dist.php para config.php . Esse arquivo será onde vamos inserir os dados referentes ao banco de dados. Execute os seguintes comandos:

 cp config-dist.php /var/www/moodle/config.php

vim config.php

Seguindo o padrão estabelecido, as configurações a serem feitas serão essas:

Altere as linhas 41,43,45 e 46 com os dados do banco de dados (que vamos criar na máquina banco). Após alteradas as linhas acima citadas, o arquivo ficará assim:

41 mariadb

43 172.27.11.20

45 moodle

46 teste123

 

Nesse mesmo arquivo, vamos alterar as linhas 135 e 151 que por padrão estão dessa forma:

Após alteradas, as linhas ficarão dessa forma: A linha 135 irá ter o conteúdo http://moodle.172-27-11-10.nip.io e a linha 151B receberá os dados referentes ao diretório de armazenamento de dados do Moodle: /home/vagrant/data/moodledata, conforme imagem abaixo:

Depois disso, podemos salvar e sair do arquivo e por enquanto o trabalho na máquina servidor está quase completo. Após alterar o arquivo daremos as devidas permissões necessário para o dataroot da seguinte forma:

 chown -R www-data:www-data /home/vagrant/data/moodledata

A ação seguinte então será: sair da máquina servidor e logar na máquina banco com os comandos:

 exit

exit

vagrant ssh banco

Faltam apenas alguns pequenos passos para que finalmente a tão esperada instalação do Moodle seja concluída. Vamos a eles.

Devemos realizar o mesmo procedimento de definição de uma senha para o usuário root com os seguintes comandos:

 sudo su -

passwd

Vamos utilizar a mesma senha teste. Feito isso, instalar o editor de texto vim com o comando:

 apt install vim

O passo agora é realizar a instalação do banco de dados. O banco de dados que utilizamos neste ambiente será o mariadb.

 apt -y install mariadb-server

Feita a instalação do banco de dados, devemos checar seu status para conferir se a ação foi realizada com sucesso.

systemctl status mariadb 

Se a ação foi bem-sucedida e tudo correu bem com a instalação, você verá essa imagem:

Após checar a instalação, vamos configurar o banco seguindo com exatidão o passo a passo seguinte:

Execute o comando:

 mysql_secure_installation

Pressione Enter após a execução do comando e em seguida escolha a opção y para todos os passos conforme as imagens:

Senha utilizada: teste

Vamos acessar o banco no comando:

 mysql -u root -pteste

Agora que estamos dentro do banco de dados, vamos criar nossa database chamada moodle:

 create database moodle;

Criando o usuário

create user 'moodle'@'172.27.11.10' idendified by 'teste123';

O último, mas não menos importante passo dentro do banco de dados, é conceder privilégios para o usuário moodle:

grant all privileges on moodle.* to 'moodle'@'localhost' identified by 'teste123';

grant all privileges on moodle.* to 'moodle'@'%' identified by 'teste123';

flush privileges;

Depois disso, as configurações dentro do banco de dados estão completas e podemos sair executando:

 exit

Para finalizar a configuração na máquina banco, será necessário liberar o acesso do IP para o banco em:

cd /etc/mysql/mariadb.conf.d/
vim 50-server.cnf

Já dentro do arquivo 50-server.cnf, vamos alterar a linha 28 que por padrão estará assim :

E depois de alterada, ficará dessa maneira:

Para finalizar, reinicie o serviço do banco de dados com:

 systemctl restart mariadb

Podemos sair da máquina banco e testar a conexão na máquina servidor:

 exit

exit

vagrant ssh servidor

Vamos logar com usuário root:

 su- 

Instale o cliente do banco de dados mariadb e teste a conexão com o banco de dados:

 apt -y install mariadb-client

mysql -u moodle -h172.27.11.20 -pteste123

Após executar o comando acima, sua máquina servidor deverá se conectar com o banco.

Para sair do banco digite:

 exit 

Todos os pré-requisitos para a instalação do Moodle foram atendidos e agora podemos finalmente realizar a instalação. Abra o navegador e digite o endereço que configuramos na máquina servidor no virtualhost do Apache moodle.172-27-11-10.nip.io A página de instalação do Moodle deverá ser exibida. Basta seguir o passo a passo apresentado na tela:

Após clicar em continue podemos ver que faltam três extensões do PHP para instalar:

Instalando as extensões pendentes do PHP na máquina servidor: 

 sudo apt install php-intl
sudo apt install php-xmlrpc
sudo apt install php-soap 

Reinicie o serviço do Apache:

 sudo systemctl restart apache2

E podemos ver que não restam dependências. Desta forma, podemos clicar em continue:

O Moodle irá realizar a instalação:

Para finalizar basta seguir o passo a passo com seus dados preenchendo os campos necessários na página do Moodle.

Esperamos que este tutorial tenha ajudado a esclarecer algumas dúvidas comuns sobre o passo a passo de instalação do Moodle.

 

Líder em Treinamento e serviços de Consultoria, Suporte e Implantação para o mundo open source. Conheça nossas soluções:

CURSOSCONSULTORIA

Anterior Resolvendo a Escassez de Profissionais de TI: Palestra Online na Latinoware 2020
Próxima Descubra como o Skaffold pode otimizar seu trabalho com Kubernetes

About author

Henrique Rocha
Henrique Rocha 3 posts

Formando em Análise e desenvolvimento de sistemas, analista de infraestrutura linux Jr em 4linux e mágico nás horas vagas.

View all posts by this author →

Você pode gostar também

Cloud

Aprenda a criar módulos com Terraform na prática

Este seria o último capítulo da nossa série de postagens sobre Terraform, mas se podemos também falar sobre versionamento de infraestrutura, acho que vale a pena no aprofundarmos em mais

Infraestrutura TI

Autenticando terraform na Google Cloud sem compartilhamento de chaves

O terraform atualmente é, de longe, a ferramenta de infraestrutura como código mais popular no mundo de TI e de Cloud. Ele tem suporte aos principais provedores de cloud e

Desenvolvimento

Desvendando o Mundo do Desenvolvimento Front-End: HTML, CSS e JavaScript

Você já olhou para algum site e se perguntou como toda aquela estrutura funciona? Já parou para pensar como tudo é definido em um site, e quis saber como é