# Gitea - Repositório Git Privado ## https://meurepositorio.com Seu repositório Git privado está instalado e configurado com sucesso! --- ## 📋 Informações do Sistema **Localização dos arquivos:** - Configuração: `/root/gitea/` - Dados do Gitea: `/root/gitea/data/` - Banco de dados: `/root/gitea/postgres/` **Portas:** - HTTP: 80 (Nginx) - HTTPS: 443 (após configurar SSL) - Gitea interno: 3000 (não exposto) - SSH do Git: 222 **Containers Docker:** - `gitea` - Servidor Gitea - `gitea-db-1` - Banco de dados PostgreSQL --- ## 🚀 Primeiros Passos ### 1. Configurar DNS **ANTES DE CONTINUAR**, certifique-se de que o DNS do domínio está configurado: ``` Tipo: A Nome: @ (ou meurepositorio.com) Valor: [IP_DESTE_SERVIDOR] TTL: 300 Tipo: A Nome: www Valor: [IP_DESTE_SERVIDOR] TTL: 300 ``` Aguarde a propagação DNS (pode levar até 24h, mas geralmente 5-15 minutos). Teste com: `ping meurepositorio.com` ### 2. Configurar SSL/TLS (HTTPS) Após confirmar que o DNS está apontando corretamente: ```bash cd /root/gitea ./configure-ssl.sh ``` Este script irá: - Obter um certificado SSL gratuito do Let's Encrypt - Configurar o Nginx para HTTPS automático - Configurar renovação automática do certificado ### 3. Acessar e Configurar o Gitea **Primeira vez:** 1. Acesse: `http://meurepositorio.com` (ou `https://` após configurar SSL) 2. Na primeira visita, você verá a tela de configuração inicial: - **Database Type**: PostgreSQL (já configurado) - **Host**: db:5432 - **Username**: gitea - **Password**: gitea - **Database Name**: gitea - **Site Title**: Meu Repositório - **Repository Root Path**: /data/git/repositories - **Git LFS Root Path**: /data/git/lfs - **Run As Username**: git - **Server Domain**: meurepositorio.com - **SSH Server Port**: 222 - **HTTP Port**: 3000 - **Base URL**: https://meurepositorio.com (ou http:// se ainda não configurou SSL) 3. **Importante**: Na seção "Administrator Account Settings", crie sua conta admin: - Username: (seu nome de usuário) - Password: (senha forte) - Email: (seu email) 4. Clique em "Install Gitea" --- ## 🔧 Gerenciamento do Sistema Use o script de gerenciamento: ```bash # Ver status /root/gitea/manage-gitea.sh status # Iniciar /root/gitea/manage-gitea.sh start # Parar /root/gitea/manage-gitea.sh stop # Reiniciar /root/gitea/manage-gitea.sh restart # Ver logs em tempo real /root/gitea/manage-gitea.sh logs # Fazer backup /root/gitea/manage-gitea.sh backup # Atualizar para versão mais recente /root/gitea/manage-gitea.sh update ``` --- ## 📦 Como Usar o Gitea ### Criar um novo repositório 1. Faça login no Gitea 2. Clique no botão "+" no canto superior direito 3. Selecione "New Repository" 4. Preencha as informações e clique em "Create Repository" ### Clonar um repositório (HTTPS) ```bash git clone https://meurepositorio.com/seuusuario/seurepositorio.git ``` ### Clonar um repositório (SSH) ```bash # Adicione sua chave SSH no Gitea primeiro (Settings > SSH Keys) git clone ssh://git@meurepositorio.com:222/seuusuario/seurepositorio.git ``` ### Push para o repositório ```bash cd seu-projeto git init git add . git commit -m "Primeiro commit" git remote add origin https://meurepositorio.com/seuusuario/seurepositorio.git git push -u origin master ``` --- ## 🔒 Segurança ### Firewall Certifique-se de que as seguintes portas estão abertas: ```bash # Permitir HTTP ufw allow 80/tcp # Permitir HTTPS ufw allow 443/tcp # Permitir SSH do Git ufw allow 222/tcp # Verificar status ufw status ``` ### Backup Regular Configure um cron job para backups automáticos: ```bash # Editar crontab crontab -e # Adicionar linha para backup diário às 3h da manhã 0 3 * * * /root/gitea/manage-gitea.sh backup ``` ### Senhas Seguras - Use senhas fortes para todas as contas - Ative autenticação de dois fatores (2FA) no Gitea - Considere usar chaves SSH em vez de senhas para Git --- ## 🔄 Atualização do Gitea Para atualizar o Gitea para a versão mais recente: ```bash cd /root/gitea ./manage-gitea.sh update ``` --- ## 🆘 Troubleshooting ### Gitea não está acessível ```bash # Verificar status dos containers docker ps # Ver logs docker logs gitea # Reiniciar /root/gitea/manage-gitea.sh restart ``` ### Nginx não está funcionando ```bash # Testar configuração nginx -t # Reiniciar Nginx systemctl restart nginx # Ver logs tail -f /var/log/nginx/error.log ``` ### SSL não está funcionando ```bash # Verificar certificados certbot certificates # Renovar manualmente certbot renew # Ver logs tail -f /var/log/letsencrypt/letsencrypt.log ``` ### Problemas de permissão ```bash # Ajustar permissões chown -R 1000:1000 /root/gitea/data chmod -R 755 /root/gitea/data ``` --- ## 📚 Recursos Úteis - Documentação oficial do Gitea: https://docs.gitea.io - Comunidade Gitea: https://discourse.gitea.io - Reportar bugs: https://github.com/go-gitea/gitea/issues --- ## 📊 Informações Técnicas **Stack:** - Gitea (última versão) - PostgreSQL 14 - Nginx (reverse proxy) - Docker & Docker Compose - Let's Encrypt (SSL/TLS) **Requisitos do Sistema:** - Linux (Ubuntu/Debian recomendado) - Docker instalado - Nginx instalado - Mínimo 2GB RAM - Mínimo 10GB de espaço em disco --- ## 📝 Notas Importantes 1. **Sempre faça backup antes de atualizar** 2. O certificado SSL é renovado automaticamente pelo certbot 3. Os dados estão em `/root/gitea/data` - proteja este diretório 4. O banco de dados PostgreSQL está em `/root/gitea/postgres` 5. Para acessar Git via SSH, use a porta 222, não 22 --- ## 🎉 Pronto! Seu repositório Git privado está pronto para uso! Acesse: **https://meurepositorio.com** (após configurar SSL) ou: **http://meurepositorio.com** (antes do SSL) Qualquer dúvida, consulte a documentação oficial ou os logs do sistema.