Forgejo é um serviço de Git auto-hospedado, poderoso e de código aberto, que oferece uma experiência integrada para gerenciar seus projetos e repositórios. Deployá-lo em um Virtual Private Server (VPS) permite que você mantenha controle total sobre seus dados e personalize seu ambiente. Este guia mostra os passos necessários para auto-hospedar o Forgejo em um VPS, cobrindo desde a instalação até a configuração.
Pré-requisitos
Antes de começar, certifique-se de possuir o seguinte:
- Um VPS com pelo menos 1GB de RAM e 1 núcleo de CPU
- Um nome de domínio apontado para seu VPS (opcional, mas recomendado)
- Docker e Docker Compose instalados no seu VPS
- Conhecimentos básicos de linha de comando Linux
Escolhendo um Provedor de VPS
Ao selecionar um provedor de VPS, considere fatores como desempenho, preço e suporte. Abaixo está uma comparação de alguns dos principais provedores de VPS adequados para hospedar Forgejo:
| Provedor | Preço (por mês) | RAM | Armazenamento | Data Centers |
|---|---|---|---|---|
| Contabo VPS | 5,99 EUR | 4 GB | 200 GB | Europa |
| Hetzner Cloud | 4,15 EUR | 2 GB | 20 GB | Europa |
| DigitalOcean | 6 USD | 1 GB | 25 GB | Global |
| Vultr | 6 USD | 1 GB | 25 GB | Global |
| Linode (Akamai Cloud) | 5 USD | 1 GB | 25 GB | Global |
Todos os preços são competitivos e oferecem uma base sólida para auto-hospedagem de aplicações como Forgejo. Veja nossa comparação completa de VPS para mais opções.
Passo 1: Configurando seu VPS
-
Acesse seu VPS: Use SSH para logar no seu VPS.
ssh root@seu_endereco_ip -
Atualize o Sistema: Garanta que seu VPS esteja atualizado.
apt update && apt upgrade -y -
Instale Docker e Docker Compose:
apt install docker.io docker-compose -y -
Inicie o Serviço do Docker:
systemctl start docker systemctl enable docker
Passo 2: Implementando Forgejo com Docker
-
Crie um Diretório para o Forgejo:
mkdir -p /opt/forgejo cd /opt/forgejo -
Crie o arquivo
docker-compose.yml:Use seu editor de texto preferido para criar o arquivo.
nano docker-compose.ymlAdicione o seguinte conteúdo:
version: '3' services: forgejo: image: forgejo/forgejo:latest environment: - GITEA__database__DB_TYPE=sqlite3 - GITEA__database__PATH=/data/gitea/gitea.db - GITEA__server__DOMAIN=seusite.com - GITEA__server__ROOT_URL=https://seusite.com volumes: - ./data:/data ports: - "3000:3000" - "22:22" restart: unless-stoppedAjuste os valores de
DOMAINeROOT_URLpara o seu domínio real. -
Inicie o Forgejo:
docker-compose up -d
Passo 3: Acessando o Forgejo
Após o container estar ativo, você pode acessar o Forgejo navegando até http://seusite.com:3000 no seu navegador. Complete a configuração inicial, criando sua conta de administrador.
Opcional: Configurando Proxy Reverso
Para garantir maior segurança e suporte a SSL, recomenda-se configurar um proxy reverso. Você pode usar NGINX ou Traefik. Aqui está um exemplo simples de configuração com NGINX:
-
Instale NGINX:
apt install nginx -y -
Crie a Configuração do NGINX:
nano /etc/nginx/sites-available/forgejoAdicione:
server { listen 80; server_name seusite.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } -
Habilite a Configuração:
ln -s /etc/nginx/sites-available/forgejo /etc/nginx/sites-enabled/ nginx -t systemctl restart nginx
Perguntas Frequentes
1. Quão seguro é auto-hospedar Forgejo em um VPS?
Auto-hospedar Forgejo pode ser seguro, desde que você siga boas práticas, como manter seu software atualizado, usar senhas fortes e configurar firewalls. Garanta que seu provedor de VPS ofereça proteção contra DDoS e escolha uma localização de data center que atenda às suas necessidades de latência e segurança. Além disso, proteja sua instância Forgejo com HTTPS para criptografar os dados em trânsito. Consulte as práticas de segurança sugeridas em fóruns como o r/selfhosted para recomendações detalhadas.
2. Posso personalizar recursos do Forgejo?
Sim, o Forgejo é altamente personalizável. Você pode modificar suas configurações através do painel de administração para adaptá-lo às suas necessidades. O Forgejo suporta diversos métodos de autenticação, permissões de repositórios e muito mais. Explore a documentação oficial Forgejo para instruções completas de personalização e aprenda como integrá-lo com ferramentas de CI/CD para aumentar sua produtividade.
3. E se encontrar problemas durante a instalação?
Se enfrentar dificuldades na instalação ou configuração do Forgejo, considere buscar ajuda nos fóruns da comunidade como o r/selfhosted e nas issues do GitHub. Além disso, certifique-se de que as versões do Docker e Docker Compose estejam atualizadas, pois incompatibilidades podem causar problemas. O repositório do Forgejo no GitHub também oferece informações valiosas e suporte ao usuário, sendo uma fonte útil para resolver problemas.
Seguindo este guia, você agora deve ter uma instância do Forgejo totalmente funcional rodando no seu VPS. Boa codificação e auto-hospedagem!