Files
openmonetis/docker-entrypoint.sh
Felipe Coutinho 99a9ff5512 fix(docker): resolver DATABASE_URL localhost→db no container automaticamente
- docker-entrypoint.sh: substituir @localhost: por @db: via sed antes das
  migrations e do Next.js subirem — transparente para o usuário
- docker-compose.yml: adicionar valor padrão para DATABASE_URL para
  permitir subir sem .env configurado

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-12 01:48:20 +00:00

24 lines
723 B
Bash

#!/bin/sh
# Dentro do container Docker, "localhost" não alcança o serviço de banco.
# Substitui automaticamente para o nome do serviço "db" da rede Docker.
# Não afeta URLs de bancos remotos (não contêm "@localhost:").
if [ -n "$DATABASE_URL" ]; then
DATABASE_URL=$(echo "$DATABASE_URL" | sed 's|@localhost:|@db:|g')
export DATABASE_URL
fi
echo "Rodando migrations..."
RETRIES=5
until NODE_PATH=/app/migrate/node_modules /app/migrate/node_modules/.bin/drizzle-kit push || [ "$RETRIES" -eq 0 ]; do
RETRIES=$((RETRIES - 1))
echo "Migration falhou, aguardando banco... ($RETRIES tentativas restantes)"
sleep 5
done
if [ "$RETRIES" -eq 0 ]; then
echo "Aviso: migrations nao foram aplicadas"
fi
exec "$@"