Pular para conteúdo

Linux (recomendado)

Estas instruções são voltadas para quem administra a instância (perfil mais técnico-operacional).

Pré-requisitos (Ubuntu)

  1. Instale dependências:
sudo apt update && sudo apt install -y git docker.io docker-compose-plugin
  1. Coloque seu usuário no grupo do Docker:
sudo usermod -aG docker $USER
  1. Faça logout/login para aplicar a permissão do grupo.

Observação:

  • Se você não tem permissões de root, use sudo quando necessário.

Instalação

  1. Baixe o repositório e entre na pasta:
git clone https://gitlab.com/yndexa/farinha.git
cd farinha
  1. Inicie o Farinha:
./run.sh

Na primeira execução, o run.sh:

  • cria o arquivo .env automaticamente a partir do .env-sample;
  • pergunta qual será o endereço público do Farinha (em português e inglês). Se você ainda não souber, pressione Enter para deixar em branco e prosseguir; você poderá editar o .env depois;
  • gera uma SECRET_KEY segura, sem depender de Django instalado no servidor;
  • cria um usuário administrador admin com senha aleatória, exibida no console apenas uma vez. Anote a senha antes de fechar o terminal.

A chave automática não contém $. Se você criar uma SECRET_KEY manualmente e ela contiver $, o script avisará que o Docker Compose pode interpretar esse caractere como variável de ambiente e oferecerá gerar uma nova chave segura.

Para saber qual ambiente será usado (desenvolvimento ou produção), o script lê a variável ENV do .env. O .env-sample vem com ENV=prod e DEBUG=False, valores adequados para uma instalação real.

HTTPS e certificados

O Farinha usa o Caddy para servir HTTPS:

  • Com um endereço público configurado, os certificados gratuitos são obtidos e renovados automaticamente.
  • Para usar certificados próprios, coloque fullchain.pem e privkey.pem na pasta certs/, na raiz do projeto.
  • Sem endereço público e sem certificados próprios (por exemplo, localhost), o HTTPS é desabilitado automaticamente.

Veja os detalhes em Segurança e HTTPS, incluindo a variável DISABLE_HTTPS e a proteção contra bots (Anubis).

Ajuste manual opcional

Se precisar revisar ou alterar as configurações, abra o .env com seu editor de texto favorito:

nano .env

Atualização

  1. Entre na pasta onde o Farinha foi instalado:
cd farinha
  1. Pare, atualize e suba novamente:
./down.sh && git pull && ./run.sh

Boas práticas

  • Anote a senha do usuário admin exibida na primeira execução; ela não é mostrada novamente.
  • Mantenha DEBUG=False no .env em instalações reais.
  • Faça o backup do banco (db/) antes de atualizações e guarde a pasta certs/ se usar certificados próprios.
  • Prefira atualizar parando e subindo tudo novamente (down + pull + run), em vez de recriar apenas um container.

Problemas comuns

  • "permission denied" ao usar Docker: seu usuário não está no grupo do Docker. Rode sudo usermod -aG docker $USER e faça logout/login (ou use sudo, quando apropriado).
  • O script para sem subir: verifique se a SECRET_KEY está presente e sem $ no .env.
  • Perdi a senha do usuário admin: crie outro superusuário pelo terminal, dentro do container:
docker compose -f docker-compose.prod.yml exec web python manage.py createsuperuser
  • Só consigo acessar via HTTP: com localhost ou IP o HTTPS é desabilitado; configure um domínio ou certificados próprios. Veja Segurança e HTTPS.
  • O painel interno não abre em /admin/: alguém pode ter alterado ADMIN_PATH no .env. Veja Usuário SuperAdmin.