docs: review OCI manager documentation in all seven translations

This commit is contained in:
Jonatan
2026-10-17 15:08:53 +02:00
parent ce1a3de719
commit d15876d940
60 changed files with 15788 additions and 285 deletions
@@ -1,17 +1,17 @@
{
"meta": {
"title": "Cómo se traduce una imagen OCI | ProxMenux",
"description": "Del repositorio de la imagen y su archivo Compose a una plantilla revisable, un plan de despliegue y un LXC nativo de Proxmox VE, sin Docker dentro."
"title": "Cómo se adapta una imagen OCI | ProxMenux",
"description": "Del repositorio de la imagen y su archivo Compose a una plantilla que puedes revisar, un plan de despliegue y un LXC nativo de Proxmox VE, sin Docker dentro."
},
"header": {
"title": "Cómo se traduce una imagen OCI",
"description": "Del repositorio de la imagen y su archivo Compose a una plantilla revisable, un plan de despliegue y un LXC nativo, sin instalar Docker dentro.",
"title": "Cómo se adapta una imagen OCI",
"description": "Del repositorio de la imagen y su archivo Compose a una plantilla que puedes revisar, un plan de despliegue y un LXC nativo, sin instalar Docker dentro.",
"section": "OCI manager Apps"
},
"sections": [
{
"id": "pipeline",
"title": "La cadena de traducción",
"title": "El proceso de adaptación",
"blocks": [
{
"mermaid": {
@@ -20,7 +20,7 @@
"repo": "Repositorio de la imagen",
"converter": "Conversor",
"template": "Plantilla JSON",
"blockers": "¿Sin bloqueos?",
"blockers": "¿Sin impedimentos?",
"no": "No",
"yes": "Sí",
"review": "Revisión / overlay",
@@ -30,7 +30,7 @@
}
},
{
"p": "El conversor lee la imagen y el archivo Compose que publica su proyecto y escribe una plantilla JSON. Una plantilla con bloqueos sin traducir pasa por revisión, donde un overlay curado los resuelve, antes de publicarse en el catálogo. Solo las plantillas sin bloqueos se ofrecen para instalar."
"p": "El conversor lee la imagen y el archivo Compose publicados por el proyecto y genera una plantilla JSON. Si quedan requisitos que no se han podido adaptar y que impiden la instalación, la plantilla pasa por una revisión: un archivo de ajustes revisados, llamado overlay, los resuelve antes de publicarla en el catálogo. Solo se ofrecen para instalar las plantillas que no tienen impedimentos pendientes."
}
]
},
@@ -41,10 +41,26 @@
{
"cards": {
"items": [
{ "icon": "archive", "title": "Identidad de la imagen", "body": "Repositorio, etiqueta rolling, arquitectura, digest resuelto y revisión del origen." },
{ "icon": "braces", "title": "Contrato del contenedor", "body": "Entrypoint, Cmd, entorno, usuario, directorio de trabajo, señal de parada, puertos y volúmenes." },
{ "icon": "layers", "title": "Traducción a Proxmox VE", "body": "Recursos, seguridad, puntos de montaje, dispositivos, sysctls, healthchecks y las adaptaciones que necesita cada uno, con su motivo." },
{ "icon": "shield", "title": "Compatibilidad", "body": "Claves admitidas, bloqueos sin traducir y el estado de cada validación." }
{
"icon": "archive",
"title": "Identidad de la imagen",
"body": "Repositorio, etiqueta de actualización continua, arquitectura, digest resuelto y revisión de origen."
},
{
"icon": "braces",
"title": "Contrato del contenedor",
"body": "Entrypoint, Cmd, entorno, usuario, directorio de trabajo, señal de parada, puertos y volúmenes."
},
{
"icon": "layers",
"title": "Adaptación a Proxmox VE",
"body": "Recursos, seguridad, puntos de montaje, dispositivos, sysctls, comprobaciones de estado y las adaptaciones necesarias en cada caso, con su justificación."
},
{
"icon": "shield",
"title": "Compatibilidad",
"body": "Claves compatibles, requisitos pendientes de adaptar que impiden la instalación y estado de cada validación."
}
]
}
}
@@ -56,12 +72,32 @@
"blocks": [
{
"table": {
"headers": ["Origen", "Ejemplo", "Resultado nativo"],
"headers": [
"Origen",
"Ejemplo",
"Resultado nativo"
],
"rows": [
["Metadatos OCI", "<code>Entrypoint</code>, <code>Cmd</code>, <code>User</code>", "Proxmox VE los importa al crear el CT"],
["Docker Compose", "<code>environment</code>, <code>volumes</code>, <code>devices</code>", "entradas de entorno del LXC, <code>mpN</code> y <code>devN</code>"],
["Perfil de ProxMenux", "GPU, healthcheck, credenciales", "preguntas y adaptaciones revisadas"],
["Usuario", "VMID, almacenamiento, red", "el contrato de la instancia"]
[
"Metadatos OCI",
"<code>Entrypoint</code>, <code>Cmd</code>, <code>User</code>",
"Proxmox VE los importa al crear el CT"
],
[
"Docker Compose",
"<code>environment</code>, <code>volumes</code>, <code>devices</code>",
"Entradas de entorno de LXC, <code>mpN</code> y <code>devN</code>"
],
[
"Perfil de ProxMenux",
"GPU, comprobación de estado, credenciales",
"Preguntas y adaptaciones revisadas"
],
[
"Usuario",
"VMID, almacenamiento, red",
"El contrato de la instancia"
]
]
}
}
@@ -69,18 +105,39 @@
},
{
"id": "install",
"title": "Qué ocurre durante una instalación",
"title": "Qué ocurre durante la instalación",
"blocks": [
{
"steps": {
"items": [
{ "title": "Resolver", "body": "Se consulta el registro, se selecciona la arquitectura del host y se fija el digest efectivo de la etiqueta rolling." },
{ "title": "Descargar y verificar", "body": "Skopeo descarga la imagen como archivo OCI, y cada capa se comprueba contra su digest y se descomprime antes de crear nada. Una descarga dañada se repite una vez antes de detener la instalación." },
{ "title": "Construir", "body": "<code>pct create</code> construye el rootfs a partir del archivo y conserva los metadatos oficiales de proceso de la imagen." },
{ "title": "Conectar", "body": "Se añaden los volúmenes, la red, el entorno, los dispositivos y los perfiles de seguridad declarados." },
{ "title": "Consola", "body": "La salida de consola del contenedor se guarda en el host, y la consola de Proxmox VE abre un shell cuando la imagen incluye uno." },
{ "title": "Comprobar", "body": "El primer arranque espera una dirección y la respuesta del servicio; un fallo no se presenta como instalación correcta." },
{ "title": "Registrar", "body": "La configuración efectiva se escribe en el contrato de la instancia que usan las actualizaciones y las recreaciones." }
{
"title": "Resolver la referencia",
"body": "Se consulta el registro, se selecciona la arquitectura del host y se fija el digest concreto al que apunta la etiqueta de actualización continua."
},
{
"title": "Descargar y verificar",
"body": "Skopeo descarga la imagen como un archivo OCI. Antes de crear nada, se verifica el digest de cada capa y se descomprimen todas las capas. Si la descarga está dañada, se vuelve a descargar una vez antes de detener la instalación."
},
{
"title": "Crear el sistema de archivos",
"body": "<code>pct create</code> crea el rootfs a partir del archivo y conserva los metadatos oficiales del proceso de la imagen."
},
{
"title": "Conectar los recursos",
"body": "Se aplican los volúmenes, la red, el entorno, los dispositivos y los perfiles de seguridad declarados."
},
{
"title": "Consola",
"body": "La salida de consola del contenedor se guarda en el host. La consola de Proxmox VE abre una shell si la imagen incluye una."
},
{
"title": "Comprobar",
"body": "En el primer arranque se espera a que el contenedor tenga una dirección y el servicio responda. Si falla, la instalación no se da por completada correctamente."
},
{
"title": "Registrar la configuración",
"body": "La configuración efectiva se guarda en el contrato de la instancia que utilizan las actualizaciones y las recreaciones."
}
]
}
}
@@ -89,7 +146,7 @@
{
"id": "example",
"title": "Ejemplo: una imagen con /config y /downloads",
"intro": "Una definición habitual de Compose y la configuración de Proxmox VE en la que se convierte. Las rutas que espera la aplicación no cambian.",
"intro": "Una definición Compose habitual y la configuración de Proxmox VE que se genera a partir de ella. Las rutas que espera la aplicación no cambian.",
"blocks": [
{
"codeGrid": {
@@ -99,14 +156,14 @@
"code": "image: lscr.io/linuxserver/example:latest\nenvironment:\n - PUID=1000\n - PGID=1000\nvolumes:\n - config:/config\n - /srv/downloads:/downloads\nports:\n - 8080:8080"
},
{
"title": "/etc/pve/lxc/VMID.conf (extracto)",
"title": "/etc/pve/lxc/VMID.conf (fragmento)",
"code": "entrypoint: /init\nmp0: local-lvm:vm-VMID-disk-1,mp=/config,backup=1,size=8G\nmp1: /srv/downloads,mp=/downloads\nnet0: name=eth0,bridge=vmbr0,ip=dhcp,type=veth\nlxc.environment.runtime: PUID=1000\nlxc.environment.runtime: PGID=1000"
}
]
}
},
{
"p": "<code>mp0</code> es un segundo disco que pertenece al contenedor, con el nombre <code>vm-VMID-disk-N</code> en el almacenamiento elegido. Se monta en <code>/config</code> y, con <code>backup=1</code>, forma parte del backup del contenedor. <code>mp1</code> no crea ningún disco: enlaza el directorio del host <code>/srv/downloads</code> con <code>/downloads</code> dentro del LXC. El puerto 8080 no se mapea: el LXC tiene una dirección propia y el servicio responde en ella."
"p": "<code>mp0</code> es un segundo disco que pertenece al contenedor, con el nombre <code>vm-VMID-disk-N</code> en el almacenamiento seleccionado. Se monta en <code>/config</code> y, con <code>backup=1</code>, se incluye en la copia de seguridad del contenedor. <code>mp1</code> no crea ningún disco: monta el directorio del host <code>/srv/downloads</code> en <code>/downloads</code> dentro del LXC. El puerto 8080 no se mapea: el LXC tiene su propia dirección y el servicio responde en ella."
}
]
}