Handle missing DOMAIN gracefully and document same-server steps
This commit is contained in:
parent
e464c9544a
commit
8fc2a134d9
|
|
@ -1,4 +1,4 @@
|
||||||
{$DOMAIN} {
|
{$DOMAIN:linegestao.inglinesystems.com.br} {
|
||||||
encode zstd gzip
|
encode zstd gzip
|
||||||
|
|
||||||
reverse_proxy api:8080
|
reverse_proxy api:8080
|
||||||
|
|
|
||||||
|
|
@ -113,6 +113,30 @@ Resultado esperado:
|
||||||
|
|
||||||
> Importante: no primeiro boot o Caddy pode levar alguns segundos para obter o certificado. Se falhar, confira se DNS já propagou e se as portas 80/443 estão acessíveis.
|
> Importante: no primeiro boot o Caddy pode levar alguns segundos para obter o certificado. Se falhar, confira se DNS já propagou e se as portas 80/443 estão acessíveis.
|
||||||
|
|
||||||
|
|
||||||
|
### Erro comum: `DOMAIN is required`
|
||||||
|
|
||||||
|
Se aparecer este erro ao subir `docker-compose.domain.yml`, o `.env` da API está sem a variável `DOMAIN`.
|
||||||
|
|
||||||
|
Corrija assim no servidor:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/apps/line-gestao-api
|
||||||
|
cp -n .env.example .env
|
||||||
|
|
||||||
|
# confirme variáveis mínimas
|
||||||
|
grep -E '^(DOMAIN|ACME_EMAIL|FRONTEND_PUBLIC_URL|JWT_KEY|POSTGRES_PASSWORD)=' .env
|
||||||
|
|
||||||
|
# se DOMAIN não aparecer, adicione
|
||||||
|
echo 'DOMAIN=linegestao.inglinesystems.com.br' >> .env
|
||||||
|
```
|
||||||
|
|
||||||
|
Depois suba novamente:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose -f docker-compose.domain.yml up -d --build --remove-orphans
|
||||||
|
```
|
||||||
|
|
||||||
Comandos úteis de diagnóstico:
|
Comandos úteis de diagnóstico:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
@ -352,3 +376,36 @@ docker exec -t <container_db> pg_dump -U <user> <db> > backup.sql
|
||||||
```bash
|
```bash
|
||||||
docker compose logs -f --tail=200
|
docker compose logs -f --tail=200
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 5.3) Front-end + Back-end no mesmo servidor (com domínio)
|
||||||
|
|
||||||
|
Sim, é possível e esse é o fluxo recomendado quando os repositórios estão em pastas irmãs.
|
||||||
|
|
||||||
|
1. Build do front:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/apps/line-gestao-frontend
|
||||||
|
|
||||||
|
git fetch --all --prune
|
||||||
|
git pull --ff-only origin <SUA_BRANCH_FRONT>
|
||||||
|
|
||||||
|
cat > .env.production << 'EOF'
|
||||||
|
VITE_API_URL=https://linegestao.inglinesystems.com.br
|
||||||
|
EOF
|
||||||
|
|
||||||
|
npm ci
|
||||||
|
npm run build
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Subir API + Caddy com HTTPS:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/apps/line-gestao-api
|
||||||
|
docker compose -f docker-compose.domain.yml up -d --build --remove-orphans
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Testar no navegador:
|
||||||
|
- Front: `https://linegestao.inglinesystems.com.br`
|
||||||
|
- API health: `https://linegestao.inglinesystems.com.br/health`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ services:
|
||||||
api:
|
api:
|
||||||
condition: service_started
|
condition: service_started
|
||||||
environment:
|
environment:
|
||||||
DOMAIN: ${DOMAIN:?DOMAIN is required}
|
DOMAIN: ${DOMAIN:-linegestao.inglinesystems.com.br}
|
||||||
ACME_AGREE: "true"
|
ACME_AGREE: "true"
|
||||||
EMAIL: ${ACME_EMAIL:-}
|
EMAIL: ${ACME_EMAIL:-}
|
||||||
ports:
|
ports:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue