🚀 Instalação completa do Gitea com todos os scripts e documentação
This commit is contained in:
12
.gitignore
vendored
Normal file
12
.gitignore
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
# Dados sensíveis
|
||||
data/
|
||||
postgres/
|
||||
*.log
|
||||
*.key
|
||||
*.pem
|
||||
|
||||
# Arquivos temporários
|
||||
*.tmp
|
||||
*.bak
|
||||
*~
|
||||
|
||||
129
ACESSO_RAPIDO.txt
Normal file
129
ACESSO_RAPIDO.txt
Normal file
@@ -0,0 +1,129 @@
|
||||
╔════════════════════════════════════════════════════════════════════╗
|
||||
║ ║
|
||||
║ 🎉 GITEA INSTALADO COM SUCESSO! 🎉 ║
|
||||
║ ║
|
||||
║ Seu repositório Git privado está pronto! ║
|
||||
║ ║
|
||||
╚════════════════════════════════════════════════════════════════════╝
|
||||
|
||||
|
||||
📍 ACESSO
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
🌐 URL: http://meurepositorio.com
|
||||
🔒 HTTPS: https://meurepositorio.com (após configurar SSL)
|
||||
📁 Localização: /root/gitea/
|
||||
|
||||
|
||||
⚡ COMANDOS RÁPIDOS
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
# Verificar status do sistema
|
||||
/root/gitea/check-system.sh
|
||||
|
||||
# Ver status dos containers
|
||||
/root/gitea/manage-gitea.sh status
|
||||
|
||||
# Ver logs em tempo real
|
||||
/root/gitea/manage-gitea.sh logs
|
||||
|
||||
# Reiniciar sistema
|
||||
/root/gitea/manage-gitea.sh restart
|
||||
|
||||
# Fazer backup
|
||||
/root/gitea/manage-gitea.sh backup
|
||||
|
||||
|
||||
🔐 CONFIGURAR SSL (HTTPS) - IMPORTANTE!
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
⚠️ ANTES: Configure o DNS para apontar para este servidor!
|
||||
|
||||
Depois execute:
|
||||
cd /root/gitea
|
||||
./configure-ssl.sh
|
||||
|
||||
|
||||
📚 DOCUMENTAÇÃO
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
📖 Documentação completa: /root/gitea/README.md
|
||||
🚀 Guia rápido: /root/gitea/QUICK_START.txt
|
||||
📋 Resumo instalação: /root/gitea/INSTALACAO_COMPLETA.txt
|
||||
⚙️ Verificar sistema: /root/gitea/check-system.sh
|
||||
|
||||
|
||||
🔧 SCRIPTS DISPONÍVEIS
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
/root/gitea/manage-gitea.sh - Gerenciar Gitea
|
||||
/root/gitea/configure-ssl.sh - Configurar HTTPS/SSL
|
||||
/root/gitea/check-system.sh - Verificar status do sistema
|
||||
|
||||
|
||||
💾 INFORMAÇÕES DO SISTEMA
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
Container Gitea: gitea (gitea/gitea:latest)
|
||||
Container Database: gitea-db-1 (postgres:14)
|
||||
Reverse Proxy: Nginx
|
||||
|
||||
Portas:
|
||||
- HTTP: 80
|
||||
- HTTPS: 443 (após SSL)
|
||||
- Git SSH: 222
|
||||
|
||||
|
||||
🔄 PRÓXIMOS PASSOS
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1. ✓ Gitea instalado e rodando
|
||||
2. ✓ Nginx configurado
|
||||
3. ⚠️ Configurar DNS (aponte para o IP deste servidor)
|
||||
4. ⚠️ Configurar SSL/HTTPS (execute ./configure-ssl.sh)
|
||||
5. ⚠️ Acessar e configurar o Gitea pela primeira vez
|
||||
6. ⚠️ Criar sua conta de administrador
|
||||
|
||||
|
||||
🎯 PRIMEIRO ACESSO
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1. Acesse: http://meurepositorio.com
|
||||
|
||||
2. Complete o formulário de instalação:
|
||||
- Database Type: PostgreSQL ✓ (já configurado)
|
||||
- Host: db:5432 ✓
|
||||
- Username: gitea ✓
|
||||
- Password: gitea ✓
|
||||
- Database Name: gitea ✓
|
||||
|
||||
3. Configure o site:
|
||||
- Server Domain: meurepositorio.com
|
||||
- SSH Server Port: 222
|
||||
- HTTP Port: 3000
|
||||
- Base URL: http://meurepositorio.com (ou https:// após SSL)
|
||||
|
||||
4. Crie sua conta de administrador:
|
||||
- Username: (seu usuário)
|
||||
- Password: (senha forte)
|
||||
- Email: (seu email)
|
||||
|
||||
5. Clique em "Install Gitea"
|
||||
|
||||
|
||||
📞 SUPORTE
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
Documentação oficial: https://docs.gitea.io
|
||||
Comunidade: https://discourse.gitea.io
|
||||
GitHub: https://github.com/go-gitea/gitea
|
||||
|
||||
|
||||
╔════════════════════════════════════════════════════════════════════╗
|
||||
║ ║
|
||||
║ ✨ Seu repositório Git privado está pronto para uso! ✨ ║
|
||||
║ ║
|
||||
║ Para ver o guia rápido: cat /root/gitea/QUICK_START.txt ║
|
||||
║ ║
|
||||
╚════════════════════════════════════════════════════════════════════╝
|
||||
|
||||
79
FIREWALL_INFO.txt
Normal file
79
FIREWALL_INFO.txt
Normal file
@@ -0,0 +1,79 @@
|
||||
╔══════════════════════════════════════════════════════════════════╗
|
||||
║ IMPORTANTE: PORTA 443 (HTTPS) BLOQUEADA ║
|
||||
╚══════════════════════════════════════════════════════════════════╝
|
||||
|
||||
O certificado SSL está instalado e funcionando corretamente no servidor,
|
||||
MAS a porta 443 está sendo bloqueada externamente.
|
||||
|
||||
SITUAÇÃO ATUAL:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
✓ Porta 80 (HTTP): ACESSÍVEL
|
||||
✗ Porta 443 (HTTPS): BLOQUEADA (firewall externo)
|
||||
✓ Nginx: FUNCIONANDO
|
||||
✓ SSL: INSTALADO
|
||||
|
||||
COMO RESOLVER:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1. PROVEDOR CLOUD/VPS (AWS, Azure, DigitalOcean, Contabo, etc.)
|
||||
────────────────────────────────────────────────────────────────
|
||||
- Acesse o painel de controle do provedor
|
||||
- Vá em "Security Groups" ou "Firewall Rules"
|
||||
- Adicione regra permitindo tráfego de entrada na porta 443/TCP
|
||||
- Origem: 0.0.0.0/0 (qualquer lugar) ou IPs específicos
|
||||
|
||||
2. ROTEADOR/FIREWALL LOCAL
|
||||
────────────────────────────────────────────────────────────────
|
||||
- Acesse a interface administrativa do roteador
|
||||
- Vá em "Port Forwarding" ou "NAT"
|
||||
- Configure:
|
||||
* Porta externa: 443
|
||||
* Porta interna: 443
|
||||
* IP interno: 172.16.60.149
|
||||
* Protocolo: TCP
|
||||
|
||||
3. FIREWALL CORPORATIVO
|
||||
────────────────────────────────────────────────────────────────
|
||||
- Entre em contato com o administrador de rede
|
||||
- Solicite liberação da porta 443 TCP de entrada
|
||||
|
||||
TESTAR APÓS LIBERAR:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
# Testar porta 443 aberta
|
||||
telnet meurepositorio.com 443
|
||||
|
||||
# Ou usar netcat
|
||||
nc -zv meurepositorio.com 443
|
||||
|
||||
# Ou no navegador
|
||||
https://meurepositorio.com
|
||||
|
||||
SE NÃO PUDER LIBERAR A PORTA 443:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
Você pode usar o Gitea temporariamente via HTTP:
|
||||
http://meurepositorio.com
|
||||
|
||||
Porém isso NÃO é seguro para produção (senhas e dados trafegam sem
|
||||
criptografia).
|
||||
|
||||
INFORMAÇÕES TÉCNICAS:
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
IP Público: 187.102.179.100
|
||||
IP Local: 172.16.60.149
|
||||
Servidor atrás de NAT: SIM
|
||||
|
||||
Nginx está escutando em:
|
||||
0.0.0.0:80 ✓
|
||||
0.0.0.0:443 ✓ (mas bloqueado externamente)
|
||||
|
||||
Certificado SSL:
|
||||
/etc/letsencrypt/live/meurepositorio.com/fullchain.pem
|
||||
Válido até: Feb 14 15:32:53 2026 GMT
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
|
||||
330
GUIA_CURSOR.md
Normal file
330
GUIA_CURSOR.md
Normal file
@@ -0,0 +1,330 @@
|
||||
# 🎯 Como Usar seu Gitea com o Cursor
|
||||
|
||||
Seu repositório Gitea funciona **exatamente como GitHub** com o Cursor!
|
||||
|
||||
---
|
||||
|
||||
## 📋 Pré-requisitos
|
||||
|
||||
1. ✅ Gitea configurado (você já tem!)
|
||||
2. ✅ Conta de usuário criada no Gitea
|
||||
3. ✅ Cursor instalado no seu computador
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Método 1: Clone via HTTPS (Mais Fácil)
|
||||
|
||||
### Passo 1: Criar repositório no Gitea
|
||||
|
||||
1. Acesse: `https://meurepositorio.com`
|
||||
2. Faça login
|
||||
3. Clique no **"+"** (canto superior direito)
|
||||
4. Selecione **"New Repository"**
|
||||
5. Preencha:
|
||||
- Nome: `meu-projeto`
|
||||
- Descrição: (opcional)
|
||||
- Privado ou Público
|
||||
6. Clique em **"Create Repository"**
|
||||
|
||||
### Passo 2: Clonar no Cursor
|
||||
|
||||
**No Cursor:**
|
||||
|
||||
1. Pressione `Ctrl+Shift+P` (ou `Cmd+Shift+P` no Mac)
|
||||
2. Digite: `Git: Clone`
|
||||
3. Cole a URL: `https://meurepositorio.com/seuusuario/meu-projeto.git`
|
||||
4. Escolha a pasta onde clonar
|
||||
5. Digite seu **usuário** e **senha** do Gitea
|
||||
|
||||
Pronto! Seu repositório está clonado e pronto para usar no Cursor! 🎉
|
||||
|
||||
### Comandos Git no Cursor
|
||||
|
||||
Depois de clonar, você pode usar Git normalmente:
|
||||
|
||||
- **Commit**: `Ctrl+Shift+G` → Digite mensagem → Clique no ✓
|
||||
- **Push**: Clique nos `...` → `Push`
|
||||
- **Pull**: Clique nos `...` → `Pull`
|
||||
- **Criar Branch**: Canto inferior esquerdo → Clique no nome da branch
|
||||
|
||||
---
|
||||
|
||||
## 🔐 Método 2: Clone via SSH (Recomendado para Uso Frequente)
|
||||
|
||||
Mais seguro e não precisa digitar senha toda vez!
|
||||
|
||||
### Passo 1: Gerar chave SSH (se ainda não tem)
|
||||
|
||||
**No seu computador:**
|
||||
|
||||
```bash
|
||||
# Linux/Mac/Windows (Git Bash)
|
||||
ssh-keygen -t ed25519 -C "seu-email@example.com"
|
||||
|
||||
# Pressione Enter para aceitar o local padrão
|
||||
# Pressione Enter para senha vazia (ou defina uma)
|
||||
```
|
||||
|
||||
### Passo 2: Copiar a chave pública
|
||||
|
||||
```bash
|
||||
# Linux/Mac
|
||||
cat ~/.ssh/id_ed25519.pub
|
||||
|
||||
# Windows (PowerShell)
|
||||
type $env:USERPROFILE\.ssh\id_ed25519.pub
|
||||
|
||||
# Windows (Git Bash)
|
||||
cat ~/.ssh/id_ed25519.pub
|
||||
```
|
||||
|
||||
Copie todo o conteúdo (começa com `ssh-ed25519 ...`)
|
||||
|
||||
### Passo 3: Adicionar no Gitea
|
||||
|
||||
1. Acesse: `https://meurepositorio.com`
|
||||
2. Faça login
|
||||
3. Clique no **avatar** (canto superior direito) → **Settings**
|
||||
4. No menu lateral: **SSH / GPG Keys**
|
||||
5. Clique em **Add Key**
|
||||
6. Cole a chave pública
|
||||
7. Dê um nome (ex: "Meu Computador")
|
||||
8. Clique em **Add Key**
|
||||
|
||||
### Passo 4: Clonar via SSH
|
||||
|
||||
**No Cursor:**
|
||||
|
||||
1. Pressione `Ctrl+Shift+P` (ou `Cmd+Shift+P`)
|
||||
2. Digite: `Git: Clone`
|
||||
3. Cole a URL SSH: `ssh://git@meurepositorio.com:222/seuusuario/meu-projeto.git`
|
||||
|
||||
⚠️ **Importante**: Note a porta **222** (não é 22!)
|
||||
|
||||
4. Escolha a pasta
|
||||
5. Não vai pedir senha! 🎉
|
||||
|
||||
---
|
||||
|
||||
## 📦 Método 3: Publicar Projeto Existente do Cursor
|
||||
|
||||
Você já tem um projeto no Cursor e quer colocar no Gitea?
|
||||
|
||||
### Passo 1: Criar repositório vazio no Gitea
|
||||
|
||||
1. Acesse o Gitea
|
||||
2. Crie um novo repositório
|
||||
3. **Importante**: NÃO marque "Initialize repository"
|
||||
4. Copie a URL que aparecer
|
||||
|
||||
### Passo 2: No Cursor
|
||||
|
||||
Abra o terminal integrado (`Ctrl+``) e execute:
|
||||
|
||||
```bash
|
||||
# Inicializar Git (se ainda não tem)
|
||||
git init
|
||||
|
||||
# Adicionar seus arquivos
|
||||
git add .
|
||||
|
||||
# Primeiro commit
|
||||
git commit -m "Primeiro commit"
|
||||
|
||||
# Adicionar o remote do Gitea
|
||||
git remote add origin https://meurepositorio.com/seuusuario/meu-projeto.git
|
||||
|
||||
# OU via SSH:
|
||||
git remote add origin ssh://git@meurepositorio.com:222/seuusuario/meu-projeto.git
|
||||
|
||||
# Push para o Gitea
|
||||
git push -u origin master
|
||||
```
|
||||
|
||||
Digite usuário e senha quando solicitado (se HTTPS).
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Workflow Diário no Cursor
|
||||
|
||||
### Fazer mudanças e enviar:
|
||||
|
||||
1. **Edite arquivos** normalmente no Cursor
|
||||
2. **Ver mudanças**: `Ctrl+Shift+G`
|
||||
3. **Stage arquivos**: Clique no `+` ao lado dos arquivos
|
||||
4. **Commit**: Digite mensagem e clique no ✓
|
||||
5. **Push**: Clique nos `...` → `Push`
|
||||
|
||||
### Baixar mudanças do servidor:
|
||||
|
||||
1. Clique nos `...` → `Pull`
|
||||
|
||||
### Criar branch:
|
||||
|
||||
1. Canto inferior esquerdo → Nome da branch
|
||||
2. `+ Create new branch...`
|
||||
3. Digite o nome
|
||||
4. Push: `...` → `Publish Branch`
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ Configurações Úteis no Cursor
|
||||
|
||||
### Salvar credenciais (HTTPS)
|
||||
|
||||
Para não digitar senha toda vez:
|
||||
|
||||
```bash
|
||||
# Linux/Mac
|
||||
git config --global credential.helper store
|
||||
|
||||
# Windows
|
||||
git config --global credential.helper wincred
|
||||
```
|
||||
|
||||
Na primeira vez que fizer push/pull, digite usuário e senha.
|
||||
Depois disso, ficará salvo!
|
||||
|
||||
### Configurar Git
|
||||
|
||||
```bash
|
||||
# Seu nome
|
||||
git config --global user.name "Seu Nome"
|
||||
|
||||
# Seu email
|
||||
git config --global user.email "seu-email@example.com"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Extensões Úteis do Cursor para Git
|
||||
|
||||
O Cursor já vem com Git integrado, mas você pode instalar:
|
||||
|
||||
- **GitLens**: Visualização avançada de histórico
|
||||
- **Git Graph**: Ver árvore de commits visual
|
||||
- **Git History**: Ver histórico de arquivos
|
||||
|
||||
---
|
||||
|
||||
## 🔍 Troubleshooting
|
||||
|
||||
### ❌ "Could not resolve host"
|
||||
|
||||
**Problema**: DNS não resolve `meurepositorio.com`
|
||||
|
||||
**Solução**: Aguarde propagação DNS ou adicione no arquivo hosts:
|
||||
|
||||
```bash
|
||||
# Linux/Mac: /etc/hosts
|
||||
# Windows: C:\Windows\System32\drivers\etc\hosts
|
||||
|
||||
187.102.179.100 meurepositorio.com
|
||||
```
|
||||
|
||||
### ❌ "SSL certificate problem"
|
||||
|
||||
**Problema**: Certificado SSL não confiável
|
||||
|
||||
**Solução temporária** (apenas para teste):
|
||||
```bash
|
||||
git config --global http.sslVerify false
|
||||
```
|
||||
|
||||
**Solução correta**: Aguarde certificado SSL ser reconhecido ou importe o certificado.
|
||||
|
||||
### ❌ "Connection timeout" (SSH)
|
||||
|
||||
**Problema**: Porta SSH não acessível
|
||||
|
||||
**Lembre-se**: O Gitea usa porta **222**, não 22!
|
||||
|
||||
URL SSH correta:
|
||||
```
|
||||
ssh://git@meurepositorio.com:222/usuario/repo.git
|
||||
```
|
||||
|
||||
### ❌ "Permission denied (publickey)"
|
||||
|
||||
**Problema**: Chave SSH não configurada
|
||||
|
||||
**Solução**:
|
||||
1. Verifique se a chave está no Gitea (Settings → SSH Keys)
|
||||
2. Teste conexão: `ssh -p 222 git@meurepositorio.com`
|
||||
|
||||
---
|
||||
|
||||
## 📚 URLs do Seu Gitea
|
||||
|
||||
### Clone HTTPS:
|
||||
```
|
||||
https://meurepositorio.com/seuusuario/seurepositorio.git
|
||||
```
|
||||
|
||||
### Clone SSH:
|
||||
```
|
||||
ssh://git@meurepositorio.com:222/seuusuario/seurepositorio.git
|
||||
```
|
||||
|
||||
### Web:
|
||||
```
|
||||
https://meurepositorio.com
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Exemplo Completo: Criar e Usar Repositório
|
||||
|
||||
```bash
|
||||
# 1. Criar pasta do projeto
|
||||
mkdir meu-projeto
|
||||
cd meu-projeto
|
||||
|
||||
# 2. Inicializar Git
|
||||
git init
|
||||
|
||||
# 3. Criar arquivo
|
||||
echo "# Meu Projeto" > README.md
|
||||
|
||||
# 4. Primeiro commit
|
||||
git add .
|
||||
git commit -m "Initial commit"
|
||||
|
||||
# 5. Conectar com Gitea (criar repo vazio lá primeiro!)
|
||||
git remote add origin https://meurepositorio.com/seuusuario/meu-projeto.git
|
||||
|
||||
# 6. Push
|
||||
git push -u origin master
|
||||
|
||||
# 7. Abrir no Cursor
|
||||
code .
|
||||
```
|
||||
|
||||
Pronto! Agora você pode trabalhar normalmente no Cursor! 🚀
|
||||
|
||||
---
|
||||
|
||||
## 💡 Dicas Profissionais
|
||||
|
||||
1. **Use SSH**: Mais seguro e rápido
|
||||
2. **Commits frequentes**: Pequenos e descritivos
|
||||
3. **Branches**: Use branches para features
|
||||
4. **Pull antes de Push**: Evita conflitos
|
||||
5. **.gitignore**: Não commite arquivos desnecessários
|
||||
6. **Backup**: Seu Gitea é o backup, mas faça backup do servidor também!
|
||||
|
||||
---
|
||||
|
||||
## 🎉 Vantagens do Seu Gitea Privado
|
||||
|
||||
✅ **Privacidade total**: Seus códigos não saem do seu servidor
|
||||
✅ **Sem limites**: Repos ilimitados, tamanho ilimitado
|
||||
✅ **Controle total**: Você decide as regras
|
||||
✅ **Grátis**: Sem mensalidades
|
||||
✅ **Rápido**: Na sua rede local
|
||||
|
||||
---
|
||||
|
||||
**Seu repositório Git privado está pronto para ser usado com o Cursor!** 🚀
|
||||
|
||||
|
||||
167
INSTALACAO_COMPLETA.txt
Normal file
167
INSTALACAO_COMPLETA.txt
Normal file
@@ -0,0 +1,167 @@
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
GITEA - INSTALAÇÃO COMPLETA E CONFIGURADA
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
✓ INSTALAÇÃO CONCLUÍDA COM SUCESSO!
|
||||
|
||||
Data: Sun Nov 16 16:27:29 UTC 2025
|
||||
Localização: /root/gitea/
|
||||
Domínio: https://meurepositorio.com
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
COMPONENTES INSTALADOS:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
✓ Gitea (última versão)
|
||||
- Container Docker rodando
|
||||
- Porta interna: 3000
|
||||
- SSH Git: porta 222
|
||||
|
||||
✓ PostgreSQL 14
|
||||
- Banco de dados configurado
|
||||
- Dados persistentes em /root/gitea/postgres
|
||||
|
||||
✓ Nginx (Reverse Proxy)
|
||||
- Configurado para meurepositorio.com
|
||||
- Porta HTTP: 80
|
||||
- Pronto para SSL/HTTPS: 443
|
||||
|
||||
✓ Scripts de Gerenciamento
|
||||
- manage-gitea.sh (gerenciar sistema)
|
||||
- configure-ssl.sh (configurar HTTPS)
|
||||
- check-system.sh (verificar status)
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
IMPORTANTE - PRÓXIMOS PASSOS:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
⚠️ O DNS ainda NÃO está apontando para este servidor!
|
||||
|
||||
Ação necessária:
|
||||
1. Configure o DNS do domínio meurepositorio.com
|
||||
- Tipo A: meurepositorio.com → IP_DESTE_SERVIDOR
|
||||
- Tipo A: www.meurepositorio.com → IP_DESTE_SERVIDOR
|
||||
|
||||
2. Aguarde propagação DNS (5-15 minutos)
|
||||
|
||||
3. Configure SSL/HTTPS:
|
||||
cd /root/gitea
|
||||
./configure-ssl.sh
|
||||
|
||||
4. Acesse e configure o Gitea:
|
||||
https://meurepositorio.com
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
ARQUIVOS E DIRETÓRIOS:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
/root/gitea/
|
||||
├── docker-compose.yml # Configuração do Docker
|
||||
├── data/ # Dados do Gitea
|
||||
├── postgres/ # Banco de dados
|
||||
├── manage-gitea.sh # Script de gerenciamento
|
||||
├── configure-ssl.sh # Script de configuração SSL
|
||||
├── check-system.sh # Script de verificação
|
||||
├── README.md # Documentação completa
|
||||
├── QUICK_START.txt # Guia rápido
|
||||
└── INSTALACAO_COMPLETA.txt # Este arquivo
|
||||
|
||||
/etc/nginx/sites-available/gitea # Configuração do Nginx
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
COMANDOS ÚTEIS:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
# Verificar status do sistema
|
||||
/root/gitea/check-system.sh
|
||||
|
||||
# Gerenciar Gitea
|
||||
/root/gitea/manage-gitea.sh status
|
||||
/root/gitea/manage-gitea.sh restart
|
||||
/root/gitea/manage-gitea.sh logs
|
||||
/root/gitea/manage-gitea.sh backup
|
||||
|
||||
# Ver containers Docker
|
||||
docker ps
|
||||
|
||||
# Ver logs
|
||||
docker logs gitea
|
||||
docker logs gitea-db-1
|
||||
|
||||
# Reiniciar Nginx
|
||||
systemctl restart nginx
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
INFORMAÇÕES TÉCNICAS:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
Container Gitea:
|
||||
- Nome: gitea
|
||||
- Imagem: gitea/gitea:latest
|
||||
- Porta HTTP: 3000 → 80 (via Nginx)
|
||||
- Porta SSH: 22 → 222
|
||||
|
||||
Container PostgreSQL:
|
||||
- Nome: gitea-db-1
|
||||
- Imagem: postgres:14
|
||||
- Database: gitea
|
||||
- User: gitea
|
||||
- Password: gitea
|
||||
|
||||
Nginx:
|
||||
- Porta HTTP: 80
|
||||
- Porta HTTPS: 443 (após SSL)
|
||||
- Config: /etc/nginx/sites-available/gitea
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
SEGURANÇA:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
Recomendações:
|
||||
✓ Configure firewall (UFW)
|
||||
✓ Use senhas fortes
|
||||
✓ Ative 2FA no Gitea
|
||||
✓ Configure backups automáticos
|
||||
✓ Instale SSL/TLS (HTTPS)
|
||||
✓ Mantenha sistema atualizado
|
||||
|
||||
Portas que devem estar abertas:
|
||||
- 80 (HTTP)
|
||||
- 443 (HTTPS)
|
||||
- 222 (SSH Git)
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
BACKUP:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
Fazer backup manual:
|
||||
/root/gitea/manage-gitea.sh backup
|
||||
|
||||
Backups automáticos (adicionar ao crontab):
|
||||
0 3 * * * /root/gitea/manage-gitea.sh backup
|
||||
|
||||
Backups salvos em:
|
||||
/root/gitea-backups/
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
SUPORTE:
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
Documentação: /root/gitea/README.md
|
||||
Guia rápido: /root/gitea/QUICK_START.txt
|
||||
Verificação: /root/gitea/check-system.sh
|
||||
|
||||
Documentação oficial: https://docs.gitea.io
|
||||
Comunidade: https://discourse.gitea.io
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
Instalação realizada em: Sun Nov 16 16:27:29 UTC 2025
|
||||
Sistema pronto para uso!
|
||||
|
||||
Para começar, leia o guia rápido:
|
||||
cat /root/gitea/QUICK_START.txt
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
|
||||
161
PRIMEIRO_REPOSITORIO.md
Normal file
161
PRIMEIRO_REPOSITORIO.md
Normal file
@@ -0,0 +1,161 @@
|
||||
# 🎯 Como Criar e Usar seu Primeiro Repositório
|
||||
|
||||
## 📦 Passo 1: Criar Repositório no Gitea
|
||||
|
||||
1. Acesse: https://meurepositorio.com
|
||||
2. Faça login com sua conta de administrador
|
||||
3. Clique no **"+"** (canto superior direito)
|
||||
4. Selecione **"Novo Repositório"**
|
||||
5. Preencha:
|
||||
- **Nome**: `scripts-servidor` (ou qualquer nome)
|
||||
- **Descrição**: `Scripts e configurações do servidor`
|
||||
- **Visibilidade**: Privado (recomendado)
|
||||
- **Initialize Repository**: ✓ Marque "Initialize repository"
|
||||
- **Add .gitignore**: Nenhum (ou escolha se quiser)
|
||||
- **Add License**: Nenhum (ou escolha se quiser)
|
||||
6. Clique em **"Criar Repositório"**
|
||||
|
||||
---
|
||||
|
||||
## 🔗 Passo 2: Clonar no Cursor (HTTPS)
|
||||
|
||||
### No seu computador (onde está o Cursor):
|
||||
|
||||
1. Abra o Cursor
|
||||
2. Pressione `Ctrl+Shift+P` (Windows/Linux) ou `Cmd+Shift+P` (Mac)
|
||||
3. Digite: `Git: Clone`
|
||||
4. Cole a URL: `https://meurepositorio.com/seuusuario/scripts-servidor.git`
|
||||
(substitua `seuusuario` pelo seu username do Gitea)
|
||||
5. Escolha uma pasta no seu computador
|
||||
6. Digite seu **usuário** e **senha** do Gitea quando solicitado
|
||||
7. Clique em **"Open"** quando perguntar se quer abrir o repositório
|
||||
|
||||
**Pronto!** Você está conectado! 🎉
|
||||
|
||||
---
|
||||
|
||||
## 📝 Passo 3: Fazer seu Primeiro Commit
|
||||
|
||||
No Cursor:
|
||||
|
||||
1. Crie um arquivo: `README.md`
|
||||
2. Escreva algo, por exemplo:
|
||||
```markdown
|
||||
# Scripts do Servidor
|
||||
|
||||
Configurações e scripts do meu servidor
|
||||
```
|
||||
3. Salve o arquivo (`Ctrl+S`)
|
||||
4. Abra o painel Git: `Ctrl+Shift+G`
|
||||
5. Você verá o arquivo `README.md` em "Changes"
|
||||
6. Clique no **+** ao lado do arquivo (stage)
|
||||
7. Digite uma mensagem: `"Primeiro commit"`
|
||||
8. Clique no **✓** (commit)
|
||||
9. Clique nos **...** → **Push**
|
||||
|
||||
**Sucesso!** Seu código está no Gitea! 🚀
|
||||
|
||||
---
|
||||
|
||||
## 💾 Salvar Credenciais (Não Pedir Senha Toda Vez)
|
||||
|
||||
### No terminal do seu computador (onde está o Cursor):
|
||||
|
||||
```bash
|
||||
# Windows
|
||||
git config --global credential.helper wincred
|
||||
|
||||
# Mac
|
||||
git config --global credential.helper osxkeychain
|
||||
|
||||
# Linux
|
||||
git config --global credential.helper store
|
||||
```
|
||||
|
||||
Na próxima vez que fizer push/pull, digite usuário e senha UMA VEZ.
|
||||
Depois disso, ficará salvo automaticamente!
|
||||
|
||||
---
|
||||
|
||||
## 📚 Repositórios Sugeridos para Organizar
|
||||
|
||||
### 1. **scripts-servidor**
|
||||
- Scripts de gerenciamento
|
||||
- Configurações
|
||||
- Backups
|
||||
- Tudo que fizemos hoje!
|
||||
|
||||
### 2. **projetos-web**
|
||||
- Sites e aplicações web
|
||||
- Frontend e backend
|
||||
|
||||
### 3. **estudos**
|
||||
- Códigos de estudo
|
||||
- Tutoriais
|
||||
- Experimentos
|
||||
|
||||
### 4. **automacao**
|
||||
- Scripts de automação
|
||||
- Cron jobs
|
||||
- Monitores
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Workflow Diário
|
||||
|
||||
```bash
|
||||
# 1. Abrir projeto no Cursor
|
||||
code /caminho/do/projeto
|
||||
|
||||
# 2. Fazer mudanças nos arquivos
|
||||
# (edite normalmente)
|
||||
|
||||
# 3. Ver mudanças
|
||||
Ctrl+Shift+G
|
||||
|
||||
# 4. Stage arquivos
|
||||
Clique no + ao lado dos arquivos
|
||||
|
||||
# 5. Commit
|
||||
Digite mensagem e clique no ✓
|
||||
|
||||
# 6. Push para Gitea
|
||||
Clique em ... → Push
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Vantagens do Seu Gitea
|
||||
|
||||
✅ **Privado**: Ninguém vê seus códigos
|
||||
✅ **Ilimitado**: Repos e tamanho sem limites
|
||||
✅ **Rápido**: Na sua rede local
|
||||
✅ **Seu**: Você controla tudo
|
||||
✅ **Grátis**: Sem mensalidades
|
||||
|
||||
---
|
||||
|
||||
## 🆘 Problemas Comuns
|
||||
|
||||
### ❌ "Authentication failed"
|
||||
**Solução**: Verifique usuário e senha. No Gitea, vá em Settings → Applications → Generate New Token (e use o token no lugar da senha)
|
||||
|
||||
### ❌ "Could not resolve host"
|
||||
**Solução**: Adicione no arquivo hosts do seu computador:
|
||||
```
|
||||
# Windows: C:\Windows\System32\drivers\etc\hosts
|
||||
# Linux/Mac: /etc/hosts
|
||||
|
||||
187.102.179.100 meurepositorio.com
|
||||
```
|
||||
|
||||
### ❌ "SSL certificate problem"
|
||||
**Solução**: O certificado é válido, mas se der problema:
|
||||
```bash
|
||||
git config --global http.sslVerify true
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**Seu Gitea está pronto para usar! Comece criando seu primeiro repositório!** 🚀
|
||||
|
||||
80
QUICK_START.txt
Normal file
80
QUICK_START.txt
Normal file
@@ -0,0 +1,80 @@
|
||||
╔══════════════════════════════════════════════════════════════════╗
|
||||
║ GITEA - GUIA RÁPIDO DE INÍCIO ║
|
||||
╚══════════════════════════════════════════════════════════════════╝
|
||||
|
||||
✓ Gitea instalado com sucesso!
|
||||
✓ Nginx configurado
|
||||
✓ Containers rodando
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
PRÓXIMOS PASSOS:
|
||||
|
||||
1. CONFIGURAR DNS (IMPORTANTE!)
|
||||
─────────────────────────────
|
||||
Configure os registros DNS do seu domínio:
|
||||
|
||||
Tipo A: meurepositorio.com → [IP_DESTE_SERVIDOR]
|
||||
Tipo A: www.meurepositorio.com → [IP_DESTE_SERVIDOR]
|
||||
|
||||
Aguarde propagação DNS (5-15 minutos)
|
||||
Teste: ping meurepositorio.com
|
||||
|
||||
2. CONFIGURAR SSL (HTTPS)
|
||||
────────────────────────
|
||||
Após o DNS estar funcionando, execute:
|
||||
|
||||
cd /root/gitea
|
||||
./configure-ssl.sh
|
||||
|
||||
⚠️ Só execute após confirmar que o DNS está apontando!
|
||||
|
||||
3. ACESSAR O GITEA
|
||||
───────────────
|
||||
Abra o navegador e acesse:
|
||||
http://meurepositorio.com (ou https:// após configurar SSL)
|
||||
|
||||
Na primeira vez, complete a configuração inicial:
|
||||
- Database já está configurado (não mude!)
|
||||
- Configure domínio: meurepositorio.com
|
||||
- Crie sua conta de administrador
|
||||
- Clique em "Install Gitea"
|
||||
|
||||
4. GERENCIAR O SISTEMA
|
||||
───────────────────
|
||||
Use o script de gerenciamento:
|
||||
|
||||
/root/gitea/manage-gitea.sh status # Ver status
|
||||
/root/gitea/manage-gitea.sh logs # Ver logs
|
||||
/root/gitea/manage-gitea.sh restart # Reiniciar
|
||||
/root/gitea/manage-gitea.sh backup # Fazer backup
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
INFORMAÇÕES DO SISTEMA:
|
||||
|
||||
📁 Localização: /root/gitea/
|
||||
🌐 Domínio: https://meurepositorio.com
|
||||
🔌 Porta HTTP: 80
|
||||
🔌 Porta HTTPS: 443 (após SSL)
|
||||
🔌 Porta SSH Git: 222
|
||||
|
||||
📚 Documentação completa: /root/gitea/README.md
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
|
||||
COMANDOS ÚTEIS:
|
||||
|
||||
# Ver status dos containers
|
||||
docker ps
|
||||
|
||||
# Ver logs do Gitea
|
||||
docker logs gitea
|
||||
|
||||
# Reiniciar Nginx
|
||||
systemctl restart nginx
|
||||
|
||||
# Ver status do Nginx
|
||||
systemctl status nginx
|
||||
|
||||
═══════════════════════════════════════════════════════════════════
|
||||
306
README.md
Normal file
306
README.md
Normal file
@@ -0,0 +1,306 @@
|
||||
# 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.
|
||||
|
||||
|
||||
114
README_PROJETO.md
Normal file
114
README_PROJETO.md
Normal file
@@ -0,0 +1,114 @@
|
||||
# 🚀 Gitea - Repositório Git Privado
|
||||
|
||||
Instalação e configuração completa do Gitea no servidor.
|
||||
|
||||
## 📋 O que tem aqui
|
||||
|
||||
Este repositório contém todos os scripts e configurações para gerenciar o servidor Gitea:
|
||||
|
||||
### 📂 Arquivos de Configuração
|
||||
- `docker-compose.yml` - Configuração dos containers Docker (Gitea + PostgreSQL)
|
||||
- `.gitignore` - Arquivos a ignorar no Git
|
||||
|
||||
### 🔧 Scripts de Gerenciamento
|
||||
- `manage-gitea.sh` - Script principal de gerenciamento (start, stop, restart, backup, etc.)
|
||||
- `configure-ssl.sh` - Configuração automática de SSL/TLS com Let's Encrypt
|
||||
- `check-system.sh` - Verificação completa do sistema
|
||||
- `monitor-porta-443.sh` - Monitoramento da porta HTTPS
|
||||
- `test-https.sh` - Teste de conectividade HTTPS
|
||||
|
||||
### 📚 Documentação
|
||||
- `README.md` - Documentação completa do sistema
|
||||
- `ACESSO_RAPIDO.txt` - Guia de acesso rápido
|
||||
- `QUICK_START.txt` - Guia de início rápido
|
||||
- `GUIA_CURSOR.md` - Como usar o Gitea com o Cursor
|
||||
- `PRIMEIRO_REPOSITORIO.md` - Como criar seu primeiro repositório
|
||||
- `FIREWALL_INFO.txt` - Informações sobre firewall e porta 443
|
||||
- `INSTALACAO_COMPLETA.txt` - Resumo completo da instalação
|
||||
|
||||
## 🎯 Comandos Rápidos
|
||||
|
||||
```bash
|
||||
# Ver status
|
||||
./manage-gitea.sh status
|
||||
|
||||
# Reiniciar
|
||||
./manage-gitea.sh restart
|
||||
|
||||
# Ver logs
|
||||
./manage-gitea.sh logs
|
||||
|
||||
# Fazer backup
|
||||
./manage-gitea.sh backup
|
||||
|
||||
# Verificar sistema
|
||||
./check-system.sh
|
||||
|
||||
# Testar HTTPS
|
||||
./test-https.sh
|
||||
```
|
||||
|
||||
## 🌐 Acesso
|
||||
|
||||
- **URL**: https://meurepositorio.com
|
||||
- **SSH**: ssh://git@meurepositorio.com:222
|
||||
- **Localização**: /root/gitea/
|
||||
|
||||
## 🔐 Informações Técnicas
|
||||
|
||||
### Stack
|
||||
- **Gitea**: Latest
|
||||
- **PostgreSQL**: 14
|
||||
- **Nginx**: Reverse proxy
|
||||
- **SSL/TLS**: Let's Encrypt (renovação automática)
|
||||
- **Docker**: Containerizado
|
||||
|
||||
### Portas
|
||||
- **80**: HTTP (redireciona para HTTPS)
|
||||
- **443**: HTTPS
|
||||
- **222**: SSH Git
|
||||
- **3000**: Gitea (interno)
|
||||
|
||||
### Containers
|
||||
- `gitea` - Servidor Gitea
|
||||
- `gitea-db-1` - PostgreSQL
|
||||
|
||||
## 📦 Estrutura de Diretórios
|
||||
|
||||
```
|
||||
/root/gitea/
|
||||
├── docker-compose.yml # Config Docker
|
||||
├── data/ # Dados do Gitea (não versionado)
|
||||
├── postgres/ # Banco de dados (não versionado)
|
||||
├── manage-gitea.sh # Gerenciamento
|
||||
├── configure-ssl.sh # Config SSL
|
||||
├── check-system.sh # Verificação
|
||||
├── monitor-porta-443.sh # Monitor HTTPS
|
||||
├── test-https.sh # Teste HTTPS
|
||||
└── docs/ # Documentação
|
||||
```
|
||||
|
||||
## 🔄 Backup
|
||||
|
||||
Backups são salvos em `/root/gitea-backups/`
|
||||
|
||||
```bash
|
||||
# Backup manual
|
||||
./manage-gitea.sh backup
|
||||
|
||||
# Backup automático (adicionar ao crontab)
|
||||
0 3 * * * /root/gitea/manage-gitea.sh backup
|
||||
```
|
||||
|
||||
## 🆘 Suporte
|
||||
|
||||
- **Documentação Gitea**: https://docs.gitea.io
|
||||
- **Comunidade**: https://discourse.gitea.io
|
||||
- **Verificação do sistema**: `./check-system.sh`
|
||||
|
||||
---
|
||||
|
||||
**Instalado e configurado com sucesso!** 🎉
|
||||
|
||||
Data da instalação: $(date)
|
||||
|
||||
153
check-system.sh
Executable file
153
check-system.sh
Executable file
@@ -0,0 +1,153 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script de verificação do sistema Gitea
|
||||
|
||||
echo "╔══════════════════════════════════════════════════════════════════╗"
|
||||
echo "║ VERIFICAÇÃO DO SISTEMA GITEA ║"
|
||||
echo "╚══════════════════════════════════════════════════════════════════╝"
|
||||
echo ""
|
||||
|
||||
# Cores
|
||||
GREEN='\033[0;32m'
|
||||
RED='\033[0;31m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
check_service() {
|
||||
if [ $2 -eq 0 ]; then
|
||||
echo -e "${GREEN}✓${NC} $1"
|
||||
else
|
||||
echo -e "${RED}✗${NC} $1"
|
||||
fi
|
||||
}
|
||||
|
||||
# 1. Verificar Docker
|
||||
echo "1. Verificando Docker..."
|
||||
docker --version > /dev/null 2>&1
|
||||
check_service "Docker instalado" $?
|
||||
|
||||
# 2. Verificar containers
|
||||
echo ""
|
||||
echo "2. Verificando containers Gitea..."
|
||||
GITEA_RUNNING=$(docker ps | grep -c "gitea/gitea")
|
||||
DB_RUNNING=$(docker ps | grep -c "postgres:14")
|
||||
|
||||
if [ $GITEA_RUNNING -eq 1 ]; then
|
||||
echo -e "${GREEN}✓${NC} Container Gitea rodando"
|
||||
else
|
||||
echo -e "${RED}✗${NC} Container Gitea NÃO está rodando"
|
||||
fi
|
||||
|
||||
if [ $DB_RUNNING -eq 1 ]; then
|
||||
echo -e "${GREEN}✓${NC} Container PostgreSQL rodando"
|
||||
else
|
||||
echo -e "${RED}✗${NC} Container PostgreSQL NÃO está rodando"
|
||||
fi
|
||||
|
||||
# 3. Verificar Nginx
|
||||
echo ""
|
||||
echo "3. Verificando Nginx..."
|
||||
systemctl is-active --quiet nginx
|
||||
check_service "Nginx rodando" $?
|
||||
|
||||
nginx -t > /dev/null 2>&1
|
||||
check_service "Configuração do Nginx válida" $?
|
||||
|
||||
# 4. Verificar se Gitea responde
|
||||
echo ""
|
||||
echo "4. Verificando acesso ao Gitea..."
|
||||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000)
|
||||
if [ "$HTTP_CODE" != "000" ]; then
|
||||
echo -e "${GREEN}✓${NC} Gitea respondendo na porta 3000 (HTTP $HTTP_CODE)"
|
||||
else
|
||||
echo -e "${RED}✗${NC} Gitea NÃO está respondendo"
|
||||
fi
|
||||
|
||||
# 5. Verificar portas
|
||||
echo ""
|
||||
echo "5. Verificando portas..."
|
||||
netstat -tuln | grep -q ":80 "
|
||||
check_service "Porta 80 (HTTP) aberta" $?
|
||||
|
||||
netstat -tuln | grep -q ":3000 "
|
||||
check_service "Porta 3000 (Gitea) aberta" $?
|
||||
|
||||
netstat -tuln | grep -q ":222 "
|
||||
check_service "Porta 222 (SSH Git) aberta" $?
|
||||
|
||||
# 6. Verificar SSL
|
||||
echo ""
|
||||
echo "6. Verificando SSL..."
|
||||
if [ -d "/etc/letsencrypt/live/meurepositorio.com" ]; then
|
||||
echo -e "${GREEN}✓${NC} Certificado SSL instalado"
|
||||
|
||||
# Verificar validade do certificado
|
||||
CERT_EXPIRY=$(openssl x509 -enddate -noout -in /etc/letsencrypt/live/meurepositorio.com/cert.pem 2>/dev/null | cut -d= -f2)
|
||||
if [ ! -z "$CERT_EXPIRY" ]; then
|
||||
echo -e " ${GREEN}→${NC} Válido até: $CERT_EXPIRY"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}⚠${NC} Certificado SSL NÃO instalado (execute ./configure-ssl.sh)"
|
||||
fi
|
||||
|
||||
# 7. Verificar disco
|
||||
echo ""
|
||||
echo "7. Verificando espaço em disco..."
|
||||
DISK_USAGE=$(df -h /root/gitea | tail -1 | awk '{print $5}' | sed 's/%//')
|
||||
if [ $DISK_USAGE -lt 80 ]; then
|
||||
echo -e "${GREEN}✓${NC} Espaço em disco OK (${DISK_USAGE}% usado)"
|
||||
else
|
||||
echo -e "${YELLOW}⚠${NC} Espaço em disco alto (${DISK_USAGE}% usado)"
|
||||
fi
|
||||
|
||||
# 8. Verificar DNS
|
||||
echo ""
|
||||
echo "8. Verificando DNS..."
|
||||
DNS_IP=$(dig +short meurepositorio.com 2>/dev/null | tail -1)
|
||||
SERVER_IP=$(curl -s ifconfig.me)
|
||||
|
||||
if [ ! -z "$DNS_IP" ]; then
|
||||
echo -e " DNS aponta para: $DNS_IP"
|
||||
echo -e " IP do servidor: $SERVER_IP"
|
||||
|
||||
if [ "$DNS_IP" == "$SERVER_IP" ]; then
|
||||
echo -e "${GREEN}✓${NC} DNS configurado corretamente"
|
||||
else
|
||||
echo -e "${YELLOW}⚠${NC} DNS não aponta para este servidor"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}⚠${NC} Não foi possível resolver DNS (pode não estar configurado ainda)"
|
||||
fi
|
||||
|
||||
# 9. Verificar logs recentes
|
||||
echo ""
|
||||
echo "9. Últimas linhas do log do Gitea:"
|
||||
echo "─────────────────────────────────────────────────────────────────"
|
||||
docker logs gitea --tail 5 2>&1
|
||||
echo "─────────────────────────────────────────────────────────────────"
|
||||
|
||||
# 10. Resumo
|
||||
echo ""
|
||||
echo "╔══════════════════════════════════════════════════════════════════╗"
|
||||
echo "║ RESUMO ║"
|
||||
echo "╚══════════════════════════════════════════════════════════════════╝"
|
||||
|
||||
if [ $GITEA_RUNNING -eq 1 ] && [ $DB_RUNNING -eq 1 ]; then
|
||||
echo -e "${GREEN}Sistema funcionando corretamente!${NC}"
|
||||
echo ""
|
||||
echo "Acesse seu Gitea em:"
|
||||
if [ -d "/etc/letsencrypt/live/meurepositorio.com" ]; then
|
||||
echo " https://meurepositorio.com"
|
||||
else
|
||||
echo " http://meurepositorio.com"
|
||||
echo ""
|
||||
echo -e "${YELLOW}RECOMENDAÇÃO:${NC} Configure SSL executando: ./configure-ssl.sh"
|
||||
fi
|
||||
else
|
||||
echo -e "${RED}Há problemas com o sistema!${NC}"
|
||||
echo "Execute: /root/gitea/manage-gitea.sh restart"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
|
||||
46
configure-ssl.sh
Executable file
46
configure-ssl.sh
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script para configurar SSL/TLS para o Gitea com Let's Encrypt
|
||||
# IMPORTANTE: Só execute este script após confirmar que o DNS está apontando corretamente para este servidor!
|
||||
|
||||
echo "==========================================
|
||||
Configurando SSL/TLS para meurepositorio.com
|
||||
=========================================="
|
||||
|
||||
# Verificar se o certbot está instalado
|
||||
if ! command -v certbot &> /dev/null; then
|
||||
echo "Instalando certbot..."
|
||||
apt update
|
||||
apt install -y certbot python3-certbot-nginx
|
||||
fi
|
||||
|
||||
# Obter certificado SSL
|
||||
echo "Obtendo certificado SSL do Let's Encrypt..."
|
||||
certbot --nginx -d meurepositorio.com -d www.meurepositorio.com --non-interactive --agree-tos --email admin@meurepositorio.com --redirect
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "
|
||||
=========================================="
|
||||
echo "✓ SSL configurado com sucesso!"
|
||||
echo "✓ Seu Gitea agora está disponível em: https://meurepositorio.com"
|
||||
echo "✓ O certificado será renovado automaticamente."
|
||||
echo "=========================================="
|
||||
|
||||
# Atualizar configuração do Gitea para HTTPS
|
||||
echo "Atualizando configuração do Gitea..."
|
||||
docker exec gitea /bin/sh -c "sed -i 's/ROOT_URL=http:/ROOT_URL=https:/g' /data/gitea/conf/app.ini" 2>/dev/null || true
|
||||
docker restart gitea
|
||||
|
||||
else
|
||||
echo "
|
||||
=========================================="
|
||||
echo "✗ Erro ao configurar SSL!"
|
||||
echo "Verifique se:"
|
||||
echo " 1. O domínio meurepositorio.com aponta para este servidor"
|
||||
echo " 2. As portas 80 e 443 estão abertas no firewall"
|
||||
echo " 3. O Nginx está rodando corretamente"
|
||||
echo "=========================================="
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
47
docker-compose.yml
Executable file
47
docker-compose.yml
Executable file
@@ -0,0 +1,47 @@
|
||||
version: "3"
|
||||
|
||||
networks:
|
||||
gitea:
|
||||
external: false
|
||||
|
||||
services:
|
||||
server:
|
||||
image: gitea/gitea:latest
|
||||
container_name: gitea
|
||||
environment:
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
- GITEA__database__DB_TYPE=postgres
|
||||
- GITEA__database__HOST=db:5432
|
||||
- GITEA__database__NAME=gitea
|
||||
- GITEA__database__USER=gitea
|
||||
- GITEA__database__PASSWD=gitea
|
||||
- GITEA__server__DOMAIN=meurepositorio.com
|
||||
- GITEA__server__SSH_DOMAIN=meurepositorio.com
|
||||
- GITEA__server__ROOT_URL=https://meurepositorio.com
|
||||
- GITEA__server__HTTP_PORT=3000
|
||||
restart: always
|
||||
networks:
|
||||
- gitea
|
||||
volumes:
|
||||
- ./data:/data
|
||||
- /etc/timezone:/etc/timezone:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
ports:
|
||||
- "3000:3000"
|
||||
- "222:22"
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
db:
|
||||
image: postgres:14
|
||||
restart: always
|
||||
environment:
|
||||
- POSTGRES_USER=gitea
|
||||
- POSTGRES_PASSWORD=gitea
|
||||
- POSTGRES_DB=gitea
|
||||
networks:
|
||||
- gitea
|
||||
volumes:
|
||||
- ./postgres:/var/lib/postgresql/data
|
||||
|
||||
57
manage-gitea.sh
Executable file
57
manage-gitea.sh
Executable file
@@ -0,0 +1,57 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script de gerenciamento do Gitea
|
||||
|
||||
cd /root/gitea
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
echo "Iniciando Gitea..."
|
||||
docker compose up -d
|
||||
;;
|
||||
stop)
|
||||
echo "Parando Gitea..."
|
||||
docker compose down
|
||||
;;
|
||||
restart)
|
||||
echo "Reiniciando Gitea..."
|
||||
docker compose restart
|
||||
;;
|
||||
status)
|
||||
echo "Status do Gitea:"
|
||||
docker compose ps
|
||||
;;
|
||||
logs)
|
||||
echo "Logs do Gitea (Ctrl+C para sair):"
|
||||
docker compose logs -f gitea
|
||||
;;
|
||||
backup)
|
||||
echo "Criando backup do Gitea..."
|
||||
BACKUP_DIR="/root/gitea-backups/$(date +%Y%m%d_%H%M%S)"
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
docker exec gitea /bin/sh -c "cd /data && tar czf /tmp/gitea-backup.tar.gz gitea"
|
||||
docker cp gitea:/tmp/gitea-backup.tar.gz "$BACKUP_DIR/"
|
||||
cp -r /root/gitea/postgres "$BACKUP_DIR/"
|
||||
echo "Backup salvo em: $BACKUP_DIR"
|
||||
;;
|
||||
update)
|
||||
echo "Atualizando Gitea..."
|
||||
docker compose pull
|
||||
docker compose up -d
|
||||
;;
|
||||
*)
|
||||
echo "Uso: $0 {start|stop|restart|status|logs|backup|update}"
|
||||
echo ""
|
||||
echo "Comandos disponíveis:"
|
||||
echo " start - Inicia os containers do Gitea"
|
||||
echo " stop - Para os containers do Gitea"
|
||||
echo " restart - Reinicia os containers do Gitea"
|
||||
echo " status - Mostra o status dos containers"
|
||||
echo " logs - Mostra os logs em tempo real"
|
||||
echo " backup - Cria um backup completo"
|
||||
echo " update - Atualiza o Gitea para a versão mais recente"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
68
monitor-porta-443.sh
Executable file
68
monitor-porta-443.sh
Executable file
@@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "╔══════════════════════════════════════════════════════════════════╗"
|
||||
echo "║ MONITORAMENTO DA PORTA 443 (HTTPS) ║"
|
||||
echo "╚══════════════════════════════════════════════════════════════════╝"
|
||||
echo ""
|
||||
|
||||
GREEN='\033[0;32m'
|
||||
RED='\033[0;31m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
# Função para testar porta
|
||||
test_port() {
|
||||
timeout 3 bash -c "</dev/tcp/meurepositorio.com/443" 2>/dev/null
|
||||
return $?
|
||||
}
|
||||
|
||||
# Teste inicial
|
||||
echo "Testando conectividade HTTPS..."
|
||||
echo ""
|
||||
|
||||
if test_port; then
|
||||
echo -e "${GREEN}✓ PORTA 443 ESTÁ ABERTA!${NC}"
|
||||
echo ""
|
||||
echo "Testando acesso HTTPS completo..."
|
||||
|
||||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 10 https://meurepositorio.com 2>/dev/null)
|
||||
|
||||
if [ "$HTTP_CODE" == "200" ] || [ "$HTTP_CODE" == "301" ] || [ "$HTTP_CODE" == "302" ]; then
|
||||
echo -e "${GREEN}✓ HTTPS funcionando! (HTTP $HTTP_CODE)${NC}"
|
||||
echo ""
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
echo -e "${GREEN}🎉 TUDO PRONTO!${NC}"
|
||||
echo ""
|
||||
echo "Acesse agora mesmo:"
|
||||
echo " https://meurepositorio.com"
|
||||
echo ""
|
||||
echo "Próximos passos:"
|
||||
echo " 1. Abra https://meurepositorio.com no navegador"
|
||||
echo " 2. Complete a configuração inicial do Gitea"
|
||||
echo " 3. Crie sua conta de administrador"
|
||||
echo ""
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
else
|
||||
echo -e "${YELLOW}⚠ Porta aberta, mas HTTPS não respondeu corretamente${NC}"
|
||||
echo "Código HTTP: $HTTP_CODE"
|
||||
fi
|
||||
else
|
||||
echo -e "${RED}✗ Porta 443 ainda está bloqueada${NC}"
|
||||
echo ""
|
||||
echo "Possíveis causas:"
|
||||
echo " - O Meraki ainda está aplicando as regras (aguarde mais um pouco)"
|
||||
echo " - A regra não foi configurada corretamente"
|
||||
echo " - Há outro firewall na frente"
|
||||
echo ""
|
||||
echo "Verificações no Meraki:"
|
||||
echo " - Security & SD-WAN > Firewall"
|
||||
echo " - Certifique-se de que há uma regra Allow para porta 443"
|
||||
echo " - Protocolo: TCP"
|
||||
echo " - Destino: ${IP_LOCAL} (ou qualquer)"
|
||||
echo " - Porta: 443"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
|
||||
51
test-https.sh
Executable file
51
test-https.sh
Executable file
@@ -0,0 +1,51 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
echo " TESTE DE CONECTIVIDADE HTTPS "
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
|
||||
echo "1. Testando porta 443 (HTTPS)..."
|
||||
if timeout 5 bash -c '</dev/tcp/meurepositorio.com/443' 2>/dev/null; then
|
||||
echo " ✓ Porta 443 está ABERTA"
|
||||
else
|
||||
echo " ✗ Porta 443 está FECHADA/BLOQUEADA"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "2. Testando porta 80 (HTTP)..."
|
||||
if timeout 5 bash -c '</dev/tcp/meurepositorio.com/80' 2>/dev/null; then
|
||||
echo " ✓ Porta 80 está ABERTA"
|
||||
else
|
||||
echo " ✗ Porta 80 está FECHADA/BLOQUEADA"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "3. Testando acesso HTTPS..."
|
||||
HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 10 https://meurepositorio.com 2>/dev/null)
|
||||
if [ "$HTTP_CODE" != "000" ] && [ ! -z "$HTTP_CODE" ]; then
|
||||
echo " ✓ HTTPS acessível (HTTP $HTTP_CODE)"
|
||||
else
|
||||
echo " ✗ HTTPS não acessível (timeout ou conexão recusada)"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "4. Verificando certificado SSL..."
|
||||
if openssl s_client -connect meurepositorio.com:443 -servername meurepositorio.com </dev/null 2>/dev/null | grep -q "Verify return code: 0"; then
|
||||
echo " ✓ Certificado SSL válido"
|
||||
else
|
||||
echo " ⚠ Não foi possível verificar o certificado (porta pode estar bloqueada)"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
echo ""
|
||||
echo "Se a porta 443 estiver fechada, você precisa:"
|
||||
echo " - Acessar o painel do provedor cloud/VPS"
|
||||
echo " - Ou configurar port forwarding no roteador"
|
||||
echo " - Ou contatar o administrador de rede"
|
||||
echo ""
|
||||
echo "Documentação: /root/gitea/FIREWALL_INFO.txt"
|
||||
echo "═══════════════════════════════════════════════════════════════"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user