Instale o Gitea: Sua Plataforma Git Self-Hosted em VPS
Você busca uma solução robusta e flexível para gerenciar seus projetos Git sem os custos e as limitações de plataformas como GitHub ou GitLab? A resposta pode estar no Gitea, uma alternativa open source e self-hosted que oferece uma experiência completa para hospedagem de repositórios, colaboração e gerenciamento de código. Neste guia, focaremos em como implantar o Gitea em um servidor VPS Linux, garantindo que você tenha total controle sobre seus dados e seu fluxo de trabalho. Assumimos que você já decidiu pela abordagem self-hosted e agora precisa de um servidor para rodar essa poderosa ferramenta.
O Que é o Gitea e Por Que Hospedá-lo em um VPS?
O que é o Gitea? Gitea é um servidor de código aberto leve escrito em Go. Ele visa ser uma alternativa fácil de instalar e gerenciar para soluções como GitHub, GitLab e Bitbucket. Com foco em desempenho e simplicidade, o Gitea oferece funcionalidades essenciais como hospedagem de repositórios Git, gerenciamento de issues, pull requests, wikis, e até mesmo um sistema de CI/CD básico.
Por que hospedar em um VPS? Hospedar o Gitea em seu próprio Virtual Private Server (VPS) oferece vantagens significativas:
- Controle Total: Seus dados permanecem sob seu controle, aumentando a segurança e a privacidade.
- Custo-Benefício: Elimine taxas mensais de serviços SaaS e pague apenas pelos recursos do seu servidor.
- Customização: Adapte o Gitea às suas necessidades específicas, sem depender das políticas de terceiros.
- Desempenho Dedicado: Recursos de CPU, RAM e disco alocados exclusivamente para sua instância do Gitea.
Na Host You Secure, entendemos a importância do controle e da eficiência. Por isso, oferecemos planos de VPS otimizados para rodar aplicações self-hosted como o Gitea, garantindo que você tenha a infraestrutura necessária para seus projetos.
Requisitos de Sistema para o Gitea em Produção
Quais os requisitos mínimos para rodar o Gitea? Para uma instalação básica e pessoal, o Gitea é incrivelmente leve. No entanto, para um ambiente de produção com múltiplos usuários e repositórios, é importante considerar recursos adequados.
Requisitos Recomendados para Produção:
- CPU: Mínimo de 2 vCPUs. Para cargas de trabalho mais intensas, 4 vCPUs são recomendadas.
- RAM: Mínimo de 2 GB. 4 GB ou mais proporcionam uma experiência mais fluida, especialmente com um grande número de usuários ou com o uso de funcionalidades adicionais como o servidor de SSH integrado.
- Armazenamento: Depende diretamente do tamanho dos seus repositórios. Para começar, 20 GB de espaço em disco são suficientes, mas planeje escalabilidade. Recomenda-se o uso de SSDs para melhor performance.
- Sistema Operacional: Linux (Ubuntu, Debian, CentOS são boas opções).
Um consumo típico de RAM para o Gitea em repouso, rodando via Docker com um banco de dados PostgreSQL, é de aproximadamente 200-300 MB. Sob carga, com múltiplos usuários realizando pushes e pulls, esse consumo pode facilmente dobrar ou triplicar.
Passo a Passo: Instalando o Gitea com Docker Compose
Como instalo o Gitea no meu VPS? A maneira mais recomendada e flexível de instalar o Gitea é utilizando Docker e Docker Compose. Isso garante um ambiente isolado, facilita atualizações e simplifica o gerenciamento das dependências.
Pré-requisitos:
- Um servidor VPS com Linux (ex: Ubuntu 22.04 LTS)
- Docker e Docker Compose instalados.
1. Preparando o Ambiente e Criando Diretórios
Primeiro, crie um diretório para o Gitea e seus dados, e navegue até ele:
sudo mkdir -p /opt/gitea
sudo chown -R git:git /opt/gitea
cd /opt/gitea
2. Criando o Arquivo docker-compose.yml
Crie um arquivo chamado docker-compose.yml no diretório /opt/gitea com o seguinte conteúdo. Este arquivo define os serviços do Gitea e do banco de dados PostgreSQL.
version: "3"
services:
db:
image: postgres:14
restart: always
environment:
POSTGRES_USER: gitea
POSTGRES_PASSWORD: your_strong_password
POSTGRES_DB: gitea
volumes:
- ./postgres-data:/var/lib/postgresql/data
networks:
- gitea_net
gitea:
image: gitea/gitea:1.21.5 # Use a versão mais recente estável
restart: always
environment:
USER_UID: 1000
USER_GID: 1000
DB_TYPE: postgres
DB_HOST: db:5432
DB_NAME: gitea
DB_USER: gitea
DB_PASS: your_strong_password
volumes:
- ./gitea-data:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "3000:3000" # Porta HTTP/HTTPS
- "2222:22" # Porta SSH
depends_on:
- db
networks:
- gitea_net
networks:
gitea_net:
external: false
Importante: Substitua your_strong_password por uma senha forte e segura para o banco de dados.
3. Iniciando os Contêineres
Execute o seguinte comando no mesmo diretório onde você salvou o docker-compose.yml para baixar as imagens e iniciar os contêineres:
docker-compose up -d
O comando -d garante que os contêineres rodem em background (detached mode).
4. Configuração Inicial do Gitea
Após os contêineres iniciarem (pode levar alguns minutos na primeira vez), acesse a interface web do Gitea através do IP do seu servidor na porta 3000. Por exemplo: http://seu_ip_servidor:3000.
Você será guiado por um assistente de configuração:
- Database Settings: Confirme os detalhes do PostgreSQL (Host:
db:5432, User:gitea, Password: a que você definiu, Database Name:gitea). - General Settings: Defina o título do site (ex: Meu Gitea Privado), URL base (
http://seu_ip_servidor:3000), e outras configurações como porta SSH (2222) e a porta do site (3000). - Server and Third-Party Service Settings: Configure o caminho dos dados (
/data) e outras opções conforme sua necessidade. - Optional Settings: Defina configurações de autenticação, e-mail, etc.
Clique em "Install Gitea" para finalizar. Você será redirecionado para a página de login, onde poderá criar sua conta de administrador.
Configurações Essenciais Pós-Instalação
O que fazer depois de instalar o Gitea? Com o Gitea instalado e funcionando, há algumas configurações que podem otimizar sua experiência e segurança.
1. Configuração de Domínio e HTTPS
Para um acesso profissional e seguro, é altamente recomendável configurar um domínio e HTTPS. Você pode usar um proxy reverso como Nginx ou Caddy para isso. O Nginx, por exemplo, pode redirecionar o tráfego da porta 80/443 para a porta 3000 do Gitea e gerenciar certificados SSL/TLS com Let's Encrypt.
2. Configuração de E-mail
Para notificações, recuperação de senha e convites, configure o envio de e-mails nas configurações do Gitea. Você precisará fornecer os detalhes do seu servidor SMTP (host, porta, usuário, senha).
3. Backup da Instância Gitea
É crucial configurar uma rotina de backup. O Docker Compose facilita isso. Você precisa garantir o backup:
- Dos volumes do banco de dados (
/opt/gitea/postgres-data). - Dos volumes do Gitea (
/opt/gitea/gitea-data, que inclui repositórios, arquivos de configuração, etc.).
Scripts automatizados que copiam esses diretórios para um local seguro ou serviço de armazenamento em nuvem são ideais.
Gitea vs. Alternativas Self-Hosted Populares
Como o Gitea se compara a outras ferramentas?
| Recurso | Gitea | GitLab (Self-Hosted) | Bitbucket Server |
|---|---|---|---|
| Instalação | Muito Fácil (Docker) | Moderada (Docker ou Pacotes) | Moderada (Pacotes/VM) |
| Requisitos de Servidor | Baixos (a partir de 2GB RAM) | Altos (mínimo 4GB RAM, recomendado 8GB+) | Altos (mínimo 4GB RAM) |
| Funcionalidades | Essenciais (Git, Issues, PRs, Wiki) | Completas (CI/CD avançado, Registry, etc.) | Foco em Git, Integração com Jira |
| Complexidade | Baixa | Alta | Moderada |
| Custo | Gratuito (Open Source) | Gratuito (Community Edition) / Pago (Premium) | Pago (Licença por usuário) |
O Gitea se destaca pela sua leveza e simplicidade, sendo a alternativa self-hosted perfeita para quem precisa das funcionalidades centrais de um servidor Git sem a complexidade e os altos requisitos de recursos de soluções mais completas como o GitLab.
Erros Comuns ao Instalar e Rodar o Gitea
Quais armadilhas devo evitar? Mesmo com a facilidade do Docker, alguns erros podem ocorrer:
- Permissões de Diretório: Garantir que o usuário do Docker tenha permissão para escrever nos diretórios de volume mapeados (
/opt/gitea) é crucial. Usesudo chown -R git:git /opt/gitease necessário. - Senhas Fracas: Usar senhas fracas para o banco de dados ou para a conta de administrador do Gitea compromete a segurança.
- Portas Conflitantes: Certifique-se de que as portas 3000 e 2222 não estejam em uso por outros serviços no seu VPS.
- Falta de Backup: Ignorar a configuração de backups é um erro grave. Perder seus repositórios pode ser desastroso.
- Requisitos de Hardware Insuficientes: Rodar o Gitea em um servidor com RAM ou CPU muito limitados resultará em lentidão e instabilidade, especialmente com múltiplos usuários.
Perguntas Relacionadas
É possível usar o Gitea sem Docker?
Sim, é possível instalar o Gitea diretamente no sistema operacional, compilando a partir do código fonte ou usando pacotes nativos. No entanto, a abordagem com Docker Compose é geralmente mais simples, isolada e recomendada.
Quais bancos de dados o Gitea suporta?
O Gitea suporta PostgreSQL, MySQL, SQLite3 e o próprio Gitea (um banco de dados interno, não recomendado para produção).
O Gitea oferece CI/CD?
Sim, o Gitea possui um sistema de CI/CD integrado chamado Gitea Actions, que é compatível com a API do GitHub Actions.
Conclusão: Assuma o Controle dos Seus Repositórios Git
Instalar o Gitea em um VPS é um passo poderoso para quem busca uma solução de gerenciamento de código Git privada, controlada e econômica. Com este guia, você aprendeu os requisitos, o processo de instalação via Docker Compose e configurações essenciais para ter sua própria plataforma Git self-hosted rodando de forma eficiente. Lembre-se que a escolha do servidor é fundamental para o desempenho e a estabilidade da sua instância.
Para rodar o Gitea com tranquilidade e performance, recomendamos nossos planos de VPS Brasil Starter. Com 2GB de RAM e 2 vCPUs a partir de R$ 49/mês, eles oferecem o ambiente ideal para esta e outras aplicações self-hosted. Rodamos esse exato setup em uma VPS Brasil Starter, garantindo velocidade e confiabilidade.
Comece a hospedar seu Gitea hoje mesmo em um VPS otimizado!
Leia também: Veja mais tutoriais de N8N
Comentários (0)
Ainda não há comentários. Seja o primeiro!