Variables y secretos
Variables de entorno y secretos utilizados para configurar Sync-in.
🌱 Variables de entorno del servidor
Durante la inicialización
- SKIP_INIT: omite el paso de inicialización (migración de base de datos, creación de cuenta de administrador, actualizaciones de permisos, etc.). Es un mecanismo excepcional,
destinado únicamente a evitar migraciones simultáneas entre réplicas o cuando una tarea de implementación específica se encarga de la inicialización. En los demás casos, incluso durante las actualizaciones, ejecute
INIT, ya que puede realizar las migraciones necesarias o la configuración específica de la versión. - INIT_ADMIN: si se establece (en
trueo cualquier otro valor que no esté vacío), fuerza la creación de la cuenta de administrador durante la inicialización. - INIT_ADMIN_LOGIN: Nombre de usuario de la cuenta de administrador que se creará durante la inicialización.
- INIT_ADMIN_PASSWORD: Contraseña de la cuenta de administrador que se creará durante la inicialización.
- PUID: Define el identificador de usuario (UID) utilizado por el contenedor (útil para permisos de archivos).
- PGID: Define el identificador de grupo (GID) utilizado por el contenedor (útil para acceder a volúmenes compartidos).
Durante la ejecución
Todos los parámetros de configuración del servidor Sync-in se pueden definir mediante variables de entorno con el prefijo SYNCIN_; consulta la sección correspondiente.
🔐 Gestión de secretos
Docker Secrets (especialmente en un entorno Swarm o Compose) permite almacenar de forma segura datos confidenciales (como contraseñas, claves API...) montándolos en contenedores como archivos, generalmente en el directorio /run/secrets/<secret_name>.
Por diseño, Docker nunca convierte directamente estos secretos en variables de entorno, para limitar el riesgo de fugas (por ejemplo, a través de docker inspect o variables de entorno accesibles dentro del proceso). La imagen de Sync-in Docker, así como muchas imágenes oficiales (MySQL, PostgreSQL...), adopta y soporta esta convención *_FILE.
Por ejemplo, en lugar de definir directamente la variable de entorno SYNCIN_MYSQL_URL, se recomienda utilizar SYNCIN_MYSQL_URL_FILE=/run/secrets/mysql_password. El servidor Sync-in leerá el contenido del archivo especificado para inicializar la variable internamente.
Este enfoque garantiza una gestión segura de los secretos y al mismo tiempo mantiene la compatibilidad con los mecanismos de configuración existentes.
Para obtener más información, consulte la documentación oficial de Docker sobre la gestión de secretos.