File size: 2,282 Bytes
2da3758 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | # 🚂 SoftEdge Corporation - Railway Deployment Guide
## Problema Identificado
O erro `AH00534: apache2: Configuration error: More than one MPM loaded` ocorre especificamente no Railway devido a conflitos entre múltiplos MPMs (Multi-Processing Modules) do Apache.
## Solução
Use o `Dockerfile.railway` otimizado especificamente para Railway:
### Passos para Deploy no Railway:
1. **Renomeie o Dockerfile:**
```bash
mv Dockerfile Dockerfile.original
mv Dockerfile.railway Dockerfile
```
2. **Commit e Push:**
```bash
git add .
git commit -m "Fix Railway MPM conflict with optimized Dockerfile"
git push origin main
```
3. **Railway fará automaticamente:**
- Build da imagem Docker otimizada
- Resolução do conflito de MPMs
- Deploy bem-sucedido
## O que foi alterado no Dockerfile.railway:
### ✅ Correções Aplicadas:
1. **MPM Fix Robusto:**
```dockerfile
RUN service apache2 stop && \
a2dismod mpm_event 2>/dev/null || true && \
a2dismod mpm_worker 2>/dev/null || true && \
a2dismod mpm_prefork 2>/dev/null || true && \
a2enmod mpm_prefork
```
2. **Configuração Apache Simplificada:**
- Removidos headers de segurança complexos que podem causar conflitos
- Configuração mínima necessária para Railway
3. **Startup Direto:**
- Removido script de startup complexo
- Apache iniciado diretamente com `apache2-foreground`
## Verificação
Após o deploy, verifique:
- ✅ Container inicia sem erros de MPM
- ✅ Apache responde na porta configurada
- ✅ Aplicação PHP+React funcionando
- ✅ Health check passando
## Rollback (se necessário)
Para voltar à versão original:
```bash
mv Dockerfile Dockerfile.railway
mv Dockerfile.original Dockerfile
git add .
git commit -m "Rollback to original Dockerfile"
git push origin main
```
## Suporte
Se o problema persistir:
1. Verifique os logs do Railway
2. Confirme que está usando `Dockerfile.railway`
3. Teste localmente: `docker build -f Dockerfile.railway -t test . && docker run -p 8080:8080 test`
---
**🎯 Esta solução resolve especificamente o conflito de MPMs no Railway mantendo toda a funcionalidade da aplicação.**
|