Cargar activos de UI personalizados usando CLI
Después de desarrollar tu interfaz de usuario de inicio de sesión personalizada, puedes desplegarla en Logto Cloud para servir a los usuarios de tu inquilino. Como ya hemos introducido en la documentación "Bring your UI", puedes lograr esto subiendo los activos de UI comprimidos en Logto Console.
Aquí proporcionamos otra opción para desplegar tus activos de UI en Cloud usando el comando CLI, lo cual será útil cuando desees integrar el proceso de despliegue en un script de NPM o en una canalización de CI/CD.
Instrucciones
Suponiendo que tienes tus activos de UI de inicio de sesión personalizados construidos en el directorio /path/to/your/custom/ui/dist
.
El comando de despliegue comprimirá automáticamente tus activos de UI, los subirá a Logto Cloud y establecerá la UI personalizada como la experiencia de inicio de sesión para los usuarios de tu inquilino.
Requisitos previos
Dado que este comando interactúa con el Management API de Logto, se requiere una aplicación máquina a máquina para autenticar la solicitud. Consulta esta documentación para aprender qué es el Management API de Logto y cómo crear una aplicación máquina a máquina con los permisos requeridos.
Opciones del comando
--help Mostrar ayuda
--version Imprimir versión de CLI
--auth Credenciales de autenticación de tu aplicación M2M de Logto. Ej.: <app-id>:<app-secret>
--endpoint URI del endpoint de Logto que apunta a tu instancia de Logto Cloud. Ej.: https://<tenant-id>.logto.app/
--path, --experience-path La ruta de la carpeta local de tus activos de experiencia de inicio de sesión personalizados.
--resource, --management-api-resource Indicador de recurso del Management API de Logto. Requerido si se usa un dominio personalizado.
--verbose Mostrar salida detallada. [default: false]
Ejecutar el comando
Suponiendo que tu ID de aplicación es foo
, el secreto de la aplicación es bar
, y tu ID de inquilino es baz
.
npx @logto/tunnel deploy --auth foo:bar --endpoint https://baz.logto.app --experience-path /path/to/your/custom/ui/dist
Si estás usando un dominio personalizado para tu endpoint de Logto, se debe especificar una opción adicional --management-api-resource
(o --resource
).
Dado que el recurso del Management API de Logto siempre está fijado a https://<tenant-id>.logto.app/api
. Puedes ejecutar el comando de la siguiente manera:
npx @logto/tunnel deploy --resource https://baz.logto.app/api --auth foo:bar --endpoint https://your.custom.domain --experience-path /path/to/your/custom/ui/dist
Nota:
- Esta opción puede omitirse cuando se usa el dominio predeterminado de Logto, ya que el CLI puede inferir el recurso automáticamente.
- Usar ya sea un dominio personalizado o el dominio predeterminado de Logto como el endpoint producirá resultados idénticos.
Alternativamente, si tienes un zip existente y prefieres usarlo directamente, puedes especificar la opción --zip-path
.
npx @logto/tunnel deploy --auth foo:bar --endpoint https://baz.logto.app --zip-path /path/to/your/custom/ui/dist.zip
Variables de entorno compatibles
El comando de despliegue también admite variables de entorno y las mapeará automáticamente a las opciones correspondientes.
Todas las variables de entorno compatibles se enumeran a continuación, con el prefijo LOGTO_
.
Variable de entorno | Opción de CLI |
---|---|
LOGTO_AUTH | --auth |
LOGTO_ENDPOINT | --endpoint |
LOGTO_EXPERIENCE_PATH | --experience-path |
LOGTO_PATH | --path |
LOGTO_MANAGEMENT_API_RESOURCE | --management-api-resource |
LOGTO_RESOURCE | --resource |
LOGTO_ZIP_PATH | --zip-path |
Usar variables de entorno
- Puedes crear un archivo
.env
en el directorio raíz del CLI, o en cualquier directorio padre donde se encuentre el CLI.
LOGTO_AUTH=foo:bar
LOGTO_ENDPOINT=https://your.custom.domain
LOGTO_EXPERIENCE_PATH=/path/to/your/custom/ui/dist
LOGTO_RESOURCE=https://baz.logto.app/api
Luego ejecuta el comando sin especificar las opciones.
npx @logto/tunnel deploy
- Alternativamente, especifica estas variables de entorno directamente al ejecutar el comando.
LOGTO_AUTH=foo:bar LOGTO_ENDPOINT=https://your.custom.domain LOGTO_EXPERIENCE_PATH=/path/to/your/custom/ui/dist LOGTO_RESOURCE=https://baz.logto.app/api npx @logto/tunnel deploy