Ir al contenido

Apps

Una app agrupa los recursos de una aplicación: contenedores y deployments, proyectos Compose, bases de datos, almacenamiento, Routes y proyectos de Pages. Cada app tiene entornos, como production y staging, y cada recurso de la app pertenece a un entorno. La página de la app muestra juntos el estado, la monitorización, las alertas y la actividad de todos ellos, y ofrece un único lugar para ejecutar, detener y promover la aplicación completa.

Las apps están disponibles en todos los planes, Community incluido. Abre Apps en la barra lateral, justo debajo de Dashboard.

Vista general de una app con los entornos Production y Staging, una alerta y mosaicos de contenedores, bases de datos y almacenamientoVista general de una app con los entornos Production y Staging, una alerta y mosaicos de contenedores, bases de datos y almacenamiento
  1. Abre Apps y elige New App.
  2. Introduce un nombre. Se muestra en Apps y en la búsqueda.
  3. La app empieza con un entorno, production, marcado como Production.

Añade más entornos con New → Environment en la página de la app o en el bloque Environments de la pestaña Settings de la app. Un entorno vacío todavía no puede hacer nada: abre su página, permite al menos un nodo con Allow node y después crea recursos en él o importa los existentes. Consulta Entornos.

Exactamente un entorno es Production. La insignia de estado de la app lo sigue, y el entorno Production no se puede eliminar. Mark as Production en otro entorno mueve la marca.

Desde la página de la app, New crea un contenedor, un deployment, un proyecto Compose, una base de datos, un almacenamiento, una Route, un proyecto de Pages o un container link directamente en un entorno. El diálogo de creación tiene la app fijada, te deja elegir el entorno y solo ofrece los nodos que permite ese entorno. Cuando el entorno no permite ningún nodo del tipo necesario, el diálogo lo indica y enlaza a Allow a node.

Para incorporar recursos existentes, usa Import existing en la sección de ese tipo de recurso de las pestañas de la app. Puedes seleccionar varios recursos a la vez. Un recurso cuyo nodo no permite el entorno de destino aparece desactivado con “Allow <node> in <environment> first”. Desde una lista normal, el menú de la fila Move to app… hace lo mismo para un recurso.

Para mover un recurso entre entornos, usa Move to Environment en su menú de fila en la página de la app. Para sacar un recurso de la app, elige No app en Move to app…. El recurso sigue funcionando en todos los casos; solo cambia su agrupación.

Los container links y los enlaces a bases de datos o almacenamiento no tienen un entorno propio: pertenecen al entorno de la carga de trabajo que los usa y aparecen en la pestaña Network de la app.

Los recursos de una app no se muestran en las listas normales de Docker, Routes, Databases, Storage y Pages, ni en sus árboles de carpetas ni en sus recuentos. Esas listas solo conservan lo que está fuera de las apps. A un recurso de una app se sigue llegando por:

  • la página de la app;
  • la búsqueda global, que lo encuentra y lo etiqueta como “in <app> · <environment>”;
  • su propia página, que sigue siendo accesible por URL y muestra Part of <app> · <environment> en la cabecera;
  • la página del nodo, que sigue enumerando todo lo que se ejecuta en el nodo, con una insignia de app.

El Dashboard y los recuentos de los nodos siguen incluyendo los recursos de las apps. Los endpoints de listado de la REST API y de MCP también los devuelven, con un campo app y un filtro que excluye a los miembros de apps.

La cabecera de la página de la app muestra el estado de la app, el número de entornos y de recursos, Refresh y New. Las pestañas son:

Pestaña Qué muestra
Overview Un panel por entorno con su estado, las alertas abiertas y mosaicos de contenedores, bases de datos, almacenamiento, Routes, Pages y nodos, de la última hora o de las últimas 24 horas
Compute Contenedores, deployments y proyectos Compose, agrupados por entorno
Data Bases de datos y almacenamiento, agrupados por entorno
Network Routes, proyectos de Pages y enlaces de contenedores, bases de datos y almacenamiento
Nodes Los nodos que puede usar cada entorno
Activity Entradas de auditoría de la app y de sus recursos, de la más reciente a la más antigua
Settings Nombre, mantenimiento de toda la app, entornos y la zona de peligro

Las filas de Compute, Data y Network tienen las mismas columnas y acciones que las listas normales.

Overview genera alertas por un contenedor que se ha reiniciado 3 o más veces en una hora, un disco de base de datos o de almacenamiento al 85 % o más, una Route con un 2 % o más de errores del servidor durante 15 minutos y un recurso que ha quedado sin conexión. Cada alerta enlaza al recurso.

Activity empieza cuando un recurso se une a la app; el historial anterior permanece en las entradas de auditoría propias del recurso. Ves las entradas de los recursos que puedes ver.

Un entorno está Failing cuando falla cualquiera de sus recursos, Degraded cuando cualquiera está degradado y Healthy en los demás casos; un entorno vacío está en buen estado. Las Routes en mantenimiento y las Routes desactivadas no cuentan. El estado de la app es el estado de su entorno Production, salvo que la app esté detenida o aislada, que es lo que muestra entonces la insignia. Una base de datos o un almacenamiento que se ejecutan en varios servidores cuentan como degradados mientras no pueden conmutar por error.

El acceso a una app se concede sobre la app o sobre uno de sus entornos. En Administration, añade una línea de acceso In an app environment y elige “<app> · every environment” o “<app> · <environment>”. Los roles de esa línea son:

Rol Puede
Viewer Ver la app, sus entornos y sus recursos
Deployer Lo mismo que Viewer, y además promover al entorno
Developer Lo mismo que Deployer, y además gestionar el entorno: variables, secretos, nodos permitidos, mantenimiento y mover recursos dentro y fuera
Operator Lo mismo que Developer, y además apagar, iniciar y aislar

Una línea para “every environment” también cubre los entornos que se añadan después. Los ámbitos que hay detrás son apps:view, apps:create, apps:edit, apps:delete, apps:env:manage, apps:promote y apps:operate; consulta la referencia de ámbitos. Las acciones sobre el propio recurso, como reiniciar un contenedor, siguen necesitando el ámbito propio de ese recurso.

  • Con apps:view sobre la app, un usuario ve la app completa: cada entorno, Overview y Activity, incluidas las entradas sobre la app y sus entornos. Los recursos siguen necesitando sus propios ámbitos de visualización: las listas, los recuentos y las entradas de actividad solo cubren los recursos que el usuario puede ver. apps:view sobre un entorno muestra ese entorno completo.
  • Sin apps:view, una app es visible para cualquiera que pueda ver uno de sus recursos (un contenedor, un deployment, un proyecto Compose, una base de datos, un almacenamiento, una Route o un proyecto de Pages) gracias a sus propias concesiones, incluida una concesión sobre el propio recurso, sobre la carpeta de su entorno o sobre la carpeta de la app. Entonces aparece Apps en la barra lateral. El usuario solo ve los entornos que contienen esos recursos y, dentro de ellos, solo esos recursos. El estado, los recuentos, Overview, Activity y los elementos de incidentes cubren solo esos recursos; Activity excluye las entradas sobre la app y sus entornos.

Ver una app a través de sus recursos no da ningún otro derecho. Los nodos permitidos, el mantenimiento, las variables y los secretos, la promoción, el apagado y el aislamiento siguen necesitando sus ámbitos de app. Ese usuario no obtiene la pestaña Nodes, y un entorno visible solo a través de sus recursos no abre ninguna página propia.

Delete App, en la zona de peligro de Settings, elimina la app. Sus recursos siguen funcionando y salen de la app; vuelven a aparecer en las listas normales. Se eliminan las variables, los secretos y los nodos permitidos de los entornos, y se retira el acceso concedido para la app y sus entornos. Eliminar un solo entorno funciona igual para ese entorno. Ninguna de las dos cosas es posible mientras la app o ese entorno estén apagados o aislados.

Todo lo que aparece en estas páginas también está disponible a través de la REST API en /api/apps y a través de MCP: list_apps, get_app, manage_app, manage_app_environment, manage_app_variables, manage_app_members, get_app_overview, get_app_activity, manage_app_incident y promote_app_environment. Para crear un recurso dentro de un entorno a través de la API o de MCP, pasa el folderId que devuelve get_app para ese tipo de recurso. list_apps y get_app informan de access para la app y para cada entorno: full con apps:view, members cuando solo es visible a través de sus recursos.