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 4linux apresentará palestra no Latinoware 2020 falando sobre a escassez de profissionais de TI.
Próxima Usando Skaffold para automatizar seu deploy no Kubernetes

About author

Henrique Rocha
Henrique Rocha 1 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

Banco de Dados

Mongo DB – Primeiros passos

Caros leitores, hoje vamos tratar de um assunto que anda muito na moda ultimamente. Os bancos de dados conhecidos como não relacionais, ou NoSQL. Longe das brigas com relação à

Desenvolvimento

Imagens do Docker – Como Reduzi-las na Prática!

Não há mais como fugir, cedo ou tarde estaremos esbarrando com a pequena baleia amigável. Aprenderemos o que é container, qual o papel do Docker no meio disso tudo, e

DevOps

Teoria do Terraform

Primeiramente, uma breve descrição sobre o que é “Infraestrutura como Código” ? Infraestrutura como Código, Infra as Code, ou simplesmente IaC, é tratar a infra como um software, desenvolvendo, versionando, testando, depurando