diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 0602cef..f0daa21 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -7,6 +7,15 @@ echo "🚀 Iniciando WhatsApp Bot Manager..." # Redis es gestionado por Coolify (externo) — no esperar, la app conecta cuando necesita echo "ℹ️ Redis externo (${REDIS_HOST:-no configurado}), omitiendo verificación de conectividad..." +# Configurar session.save_path con host/password real de Redis +# php.ini no expande variables de entorno, por eso se hace aquí +REDIS_SESSION_PATH="tcp://${REDIS_HOST:-127.0.0.1}:${REDIS_PORT:-6379}" +if [ -n "${REDIS_PASSWORD}" ]; then + REDIS_SESSION_PATH="${REDIS_SESSION_PATH}?auth=${REDIS_PASSWORD}" +fi +sed -i "s|session.save_path.*|session.save_path = \"${REDIS_SESSION_PATH}\"|" /usr/local/etc/php/conf.d/custom.ini +echo "✅ PHP sessions → Redis: ${REDIS_HOST:-127.0.0.1}:${REDIS_PORT:-6379}" + # Esperar a que MySQL esté disponible if [ "${DB_HOST}" = "mysql" ] || [ "${DB_HOST}" = "db" ]; then echo "⏳ Esperando MySQL local..." diff --git a/docker/php/php.ini b/docker/php/php.ini index b7e0384..0406c72 100644 --- a/docker/php/php.ini +++ b/docker/php/php.ini @@ -26,9 +26,9 @@ disable_functions = [curl] curl.cainfo = /etc/ssl/certs/ca-certificates.crt -; Session +; Session — usar variables de entorno para Redis (Coolify las inyecta) session.save_handler = redis -session.save_path = "tcp://redis:6379" +session.save_path = "tcp://${REDIS_HOST}:${REDIS_PORT}?auth=${REDIS_PASSWORD}" session.gc_maxlifetime = 3600 session.cookie_httponly = 1 session.use_strict_mode = 1