Base de Conhecimento

Moodle na VPS: como instalar passo a passo

  • moodle na vps, moodle, lms, php, vps
  • Usuários acharam útil: 0

Aprenda a instalar o Moodle 5.3 no seu servidor: requisitos, pasta public, moodledata fora da área web, instalação pelo terminal, cron a cada minuto e atualização.

Por Redação Eleven Host · @robson.direitodigital · 1 de novembro de 2026 · 8 min de leitura

Arte da Eleven Host: janela de terminal com o título: Moodle na VPS: como instalar passo a passo

Capa da Redação Eleven Host para o guia: Moodle na VPS: como instalar passo a passo Arte: Eleven Host

O Moodle na VPS é o Moodle instalado no seu próprio servidor. Você instala com servidor web, PHP e banco de dados, cria a pasta moodledata fora da área pública e liga o cron.

O que é o Moodle e para quem serve

O Moodle é um sistema de gestão de aprendizagem (LMS), que você instala e mantém no seu próprio servidor.

Ao instalar por conta própria, o site e os arquivos ficam no seu servidor, e a manutenção também. Se ainda está conhecendo servidores, o guia de iniciantes sobre servidor VPS explica o básico antes de começar.

Na versão 5.3, o Moodle pede PHP 8.3 ou mais novo, um banco de dados recente, a pasta moodledata fora da área pública e o cron rodando a cada minuto.

A versão 5.3 é uma LTS, ou seja, de suporte longo, e foi lançada no início de outubro de 2026. Segundo a tabela de lançamentos do projeto, o suporte geral vai até 4 de outubro de 2027 e as correções de segurança vão até 1 de outubro de 2029.

Requisitos da versão 5.3

Estes são os requisitos que as notas de lançamento e a documentação do Moodle trazem para a 5.3. Antes de instalar, confira o que o seu sistema oferece, porque alguns mínimos subiram nesta versão.

  • PHP: mínimo de 8.3.0, e o 8.4 também é suportado. Só há suporte a PHP de 64 bits.
  • Configurações do PHP: a extensão sodium é obrigatória, a opção max_input_vars deve ser 5000 ou mais, memory_limit deve ter pelo menos 96M (a documentação recomenda 128M) e file_uploads precisa estar ligada.
  • Extensões do PHP: ctype, curl, dom, gd, iconv, intl, json, mbstring, pcre, simplexml, spl, xml, zip e a do banco que você usar (pgsql ou mysqli, por exemplo). A documentação recomenda ainda openssl, soap, tokenizer e xmlrpc.
  • Banco de dados: PostgreSQL a partir da 17, MySQL a partir da 8.4, MariaDB a partir da 11.4.0 ou SQL Server 2019. O Oracle deixou de ser suportado desde a 5.0.
  • Disco: 200 MB para o código do Moodle, mais o espaço que você precisar para o conteúdo.

A documentação diz que o Moodle é desenvolvido principalmente em Linux, com Apache, e recomenda usar a versão de correção mais recente da série de cada componente. Para montar o servidor web, veja o guia Instalar Apache no Ubuntu: passo a passo na VPS.

Quem já tem um Moodle pode atualizar para a 5.3 apenas a partir da versão 4.4 ou mais nova.

Passo a passo: baixar o Moodle

Você pode baixar o zip da versão em moodle.org/downloads ou usar o Git. Com o Git, segundo a documentação de administração, o comando para a tag da versão 5.3.0 é este (troque o caminho final pela pasta em que o Moodle ficará):

git clone -b v5.3.0 https://github.com/moodle/moodle.git /path/to/your/moodle/storage/area

Desde a versão 5.1, o Moodle usa uma pasta chamada public para todos os arquivos acessíveis pela web, e o servidor web deve ser configurado para servir os arquivos dessa pasta. Isso significa que o DocumentRoot do Apache (ou a raiz do site, em outro servidor) aponta para public, e não para a raiz do Moodle. A documentação também cita a opção de criar um link simbólico para ela. Um tutorial antigo que aponte o servidor para a raiz do Moodle está errado para a 5.1 em diante.

Na documentação de atualização, a mudança vem com um motivo: a configuração e outros arquivos sensíveis ficam fora dessa pasta, para mais segurança.

Crie também a pasta moodledata, onde o Moodle guarda os arquivos enviados. A documentação é direta: ela não deve ficar dentro de uma área acessível pela web, como public_html/moodledata/.

Sobre permissões, a documentação diz que é vital que os arquivos do Moodle não sejam graváveis pelo usuário do servidor web. O exemplo dela é:

chown -R root /path/to/moodle

chmod -R 0755 /path/to/moodle

Crie também o banco de dados para o Moodle. A documentação manda não usar a conta root ou de superusuário do banco: crie um usuário próprio para o Moodle.

Instalar pelo navegador ou pela linha de comando

Se o instalador do Moodle não criar o arquivo de configuração, a documentação manda copiar o config-dist.php, que fica na raiz do Moodle, para config.php.

Para instalar pelo terminal, a documentação usa o script install.php. Os exemplos dela usam o usuário apache; no Debian e no Ubuntu, a documentação do cron confirma o www-data, que usamos abaixo. Na pasta admin/cli do Moodle, o comando é:

cd /path/to/moodle/admin/cli

sudo -u www-data /usr/bin/php install.php

Para ver as opções do instalador, use a ajuda:

sudo -u www-data /usr/bin/php admin/cli/install.php --help

Se o seu servidor web roda com outro usuário, troque o www-data por ele.

Está escolhendo uma VPS? VPS a partir de R$ 17,00/mês no Plano Bronze; confira na loja o que cada plano inclui. Ver os planos de VPS

Ligar o cron do Moodle

O cron não é opcional. A documentação avisa que, sem ele, o site não funciona direito, e a frequência indicada é a cada minuto. A linha da documentação é esta:

* * * * * /usr/bin/php /path/to/moodle/admin/cli/cron.php >/dev/null

No Debian e no Ubuntu, a documentação manda colocar a linha no crontab do usuário www-data, que é o usuário com o qual o Apache roda. Troque /path/to/moodle pelo caminho real do Moodle no seu servidor.

Se algo não funcionar depois de mexer no servidor web, o guia systemctl: como iniciar, parar e ver serviços na VPS mostra como conferir se o serviço está rodando.

Atualizar o Moodle e fazer backup

Antes de atualizar, a documentação manda guardar três coisas: o software do Moodle, os arquivos enviados (a pasta moodledata) e o banco de dados, com um dump do Postgres ou do MySQL, por exemplo. Para gerar o dump, use a ferramenta do seu banco. Recomendamos guardar as cópias fora da VPS.

Depois, coloque o site em modo de manutenção e espere o cron terminar o que estiver rodando. A documentação deixa um aviso claro: não copie os arquivos novos por cima dos antigos.

Se você instalou pelo Git, a atualização por tag usa estes comandos (troque v5.3.x pela tag desejada):

git fetch origin

git checkout v5.3.x

Se acompanha o branch, o caminho é este:

git fetch origin

git rebase origin/MOODLE_503_STABLE

Depois de trocar o código, a documentação de linha de comando traz a sequência abaixo, aqui com www-data no lugar de apache. O script de atualização não liga o modo de manutenção por você, por isso o primeiro comando existe:

sudo -u www-data /usr/bin/php admin/cli/maintenance.php --enable

sudo -u www-data /usr/bin/php admin/cli/upgrade.php

sudo -u www-data /usr/bin/php admin/cli/maintenance.php --disable

Quem vem da versão 5.0 ou de uma anterior precisa também mudar a configuração do servidor web para usar a pasta public.

E o Docker?

O projeto oficial moodle-docker, do projeto moodlehq, é voltado a desenvolvedores e testadores: a descrição dele fala em implantar um ambiente de teste. Por isso, para um site de cursos de verdade, o caminho descrito aqui é a instalação tradicional, com servidor web, PHP e banco de dados.

Cuidados de segurança

A documentação manda ler a página de recomendações de segurança e conferir o relatório Security Checks, em Site Administration. Ela também desaconselha o instalador de plugins com arquivos graváveis em sites de produção.

Checklist depois de instalar

  • O servidor web aponta para a pasta public do Moodle.
  • A pasta moodledata está fora da área pública.
  • Os arquivos do Moodle não são graváveis pelo usuário do servidor web.
  • O Moodle usa um usuário de banco próprio, e não o root.
  • O cron roda a cada minuto, no crontab do www-data.
  • Conferi o relatório Security Checks em Site Administration.
  • Fiz cópia do código, da moodledata e do banco antes de atualizar.

Um endereço próprio para os seus cursos

Com a plataforma no ar, vale pensar no endereço que os alunos vão digitar. Um domínio próprio, apontado para a VPS, deixa o acesso mais fácil de lembrar. O guia Site com e sem www: como fazer abrir nos dois endereços ajuda a deixar o endereço consistente.

Ainda não tem um domínio para a sua plataforma de cursos? Registre o seu na Eleven Host. Registrar domínio

Perguntas frequentes

Qual versão do PHP o Moodle 5.3 pede?

No mínimo o PHP 8.3.0, e o 8.4 também é suportado, segundo as notas de lançamento. A extensão sodium é obrigatória.

O cron do Moodle é obrigatório?

Sim. A documentação avisa que o site não funciona direito sem ele, e a frequência indicada é a cada minuto.

Para onde o servidor web deve apontar?

Desde a versão 5.1, para a pasta public dentro do Moodle, e não para a raiz.

Posso instalar o Moodle com Docker?

O projeto oficial moodle-docker é voltado a desenvolvedores e testadores. Para um site de verdade, a documentação descreve a instalação tradicional.

Posso pular direto da versão 4.3 para a 5.3?

Não. A documentação diz que só é possível atualizar para a 5.3 a partir da versão 4.4 ou mais nova.

Esta resposta lhe foi útil?

Artigos Relacionados