Ir al contenido
Seleccionar idioma:Español

Instalar Kept

Elige cómo ejecutas Kept y sigue sus pasos. Cada camino tiene una guía completa en esta sección; el enlace está al final de sus pasos.

Docker Compose

Lo que necesitas

Docker con el plugin Compose, y una terminal. Probado con 1 GB de RAM y un núcleo de CPU; Kept y su base de datos usan alrededor de 200–400 MB de ella (lo que se probó).

  1. Descarga compose.yaml en una carpeta propia: Kept y su base de datos en un archivo, sin copia del repositorio y sin contraseñas que crear.

    Ventana de terminal
    mkdir kept && cd kept
    curl -fsSLO https://raw.githubusercontent.com/keptinventory/kept/v1.14.7/compose.yaml
  2. Escribe .env. init pregunta la dirección en la que abrirás Kept, como http://kept.home.arpa:8080. Usa un nombre en lugar de una dirección IP: las etiquetas impresas la llevan.

    Ventana de terminal
    docker compose run --rm init

    Deberías ver

    Wrote .env.
    KEPT SETUP CODE: XXX-XXX
    Next: docker compose up -d, then open http://kept.home.arpa:8080 and enter the setup code.
  3. Inícialo. Arranca la base de datos, dos servicios de una sola ejecución crean sus inicios de sesión y aplican las migraciones, y luego Kept arranca en el puerto 8080.

    Ventana de terminal
    docker compose up -d

    Deberías ver

    En la dirección, la página Ingresa el código de configuración de Kept.

  4. Configúralo. Introduce el código que mostró init y crea la primera cuenta: se convierte en el administrador de la instancia.

  5. Guarda las claves. Imprime el kit de recuperación y guárdalo en otro lugar que no sea este servidor, como un gestor de contraseñas. Una copia de seguridad solo recupera los valores secretos con estas claves.

    Ventana de terminal
    docker compose exec kept kept admin recovery-kit

    Deberías ver

    Un texto que empieza por KEPT RECOVERY KIT.

Cada paso en detalle, con Caddy para HTTPS y Ollama para IA local: Instalar con Docker Compose.

Kubernetes

Lo que necesitas

Un clúster de Kubernetes como k3s, kubectl y helm, y una terminal. El chart pide 384 MiB de memoria para Kept (como máximo 1 GiB) y 256 MiB para su Postgres incluido (como máximo 512 MiB).

  1. Crea los secrets. El chart nunca escribe un secret: los inicios de sesión de la base de datos y el superusuario del Postgres incluido toman sus contraseñas de secrets que creas antes.

    Ventana de terminal
    kubectl create namespace kept
    pw() { openssl rand -hex 32; }
    # The four database logins (always).
    kubectl -n kept create secret generic kept-db \
    --from-literal=KEPT_DB_OWNER_PASSWORD="$(pw)" --from-literal=KEPT_DB_APP_PASSWORD="$(pw)" \
    --from-literal=KEPT_DB_AUTH_PASSWORD="$(pw)" --from-literal=KEPT_DB_SYSTEM_PASSWORD="$(pw)"
    # The bundled Postgres's superuser (or, for external Postgres with roles.create, the server admin's password).
    kubectl -n kept create secret generic kept-postgres --from-literal=POSTGRES_PASSWORD="$(pw)"
  2. Instala el chart, con publicUrl en la dirección que la gente abrirá. No añadas --wait a esta primera instalación: las migraciones se ejecutan después.

    Ventana de terminal
    helm install kept oci://ghcr.io/keptinventory/charts/kept --version 1.14.7 -n kept \
    --set publicUrl=https://kept.example.org \
    --set roles.existingSecret=kept-db --set postgres.superuserSecret=kept-postgres

    Deberías ver

    La primera línea de las notas que imprime Helm:

    Kept 1.14.7 is installed as "kept" in namespace "kept".
  3. Busca el código de configuración. Kept lo imprime una vez, en su primer inicio.

    Ventana de terminal
    kubectl -n kept logs deploy/kept | grep 'KEPT SETUP CODE'

    Deberías ver

    KEPT SETUP CODE: XXX-XXX

    Abre la dirección, introduce el código y crea la primera cuenta: se convierte en el administrador de la instancia.

  4. Guarda las claves. Guarda el kit de recuperación fuera del clúster.

    Ventana de terminal
    kubectl -n kept exec deploy/kept -- kept admin recovery-kit > kept-recovery-kit.txt

    Deberías ver

    kept-recovery-kit.txt, que empieza por KEPT RECOVERY KIT.

  5. Compruébalo. helm test pide al Kept en marcha /readyz y /version.

    Ventana de terminal
    helm test kept -n kept

En Windows, ejecuta estos comandos en WSL. Los valores, los secrets opcionales y lo que ejecuta el chart: Instalar en Kubernetes con Helm.

Desde el código

Lo que necesitas

Git, Docker con el plugin Compose, y una terminal. Kept se ejecuta como con Docker Compose, con tu propia imagen.

  1. Consigue el código.

    Ventana de terminal
    git clone https://github.com/keptinventory/kept.git && cd kept
  2. Construye la imagen, con la etiqueta kept:local.

    Ventana de terminal
    docker build -t kept:local .
  3. Escribe .env. Apunta compose.yaml a tu imagen y luego ejecuta init. Encuentra el .env, pregunta si debe actualizarlo (responde Y) y luego la dirección en la que abrirás Kept.

    Ventana de terminal
    echo KEPT_IMAGE=kept:local >> .env
    docker compose run --rm init

    Deberías ver

    Updated .env.
    KEPT SETUP CODE: XXX-XXX
  4. Inícialo y abre la dirección.

    Ventana de terminal
    docker compose up -d

    Deberías ver

    La página Ingresa el código de configuración de Kept. Introduce el código que mostró init y crea la primera cuenta: se convierte en el administrador de la instancia.

  5. Guarda las claves. Imprime el kit de recuperación y guárdalo en otro lugar que no sea este servidor.

    Ventana de terminal
    docker compose exec kept kept admin recovery-kit

    Deberías ver

    Un texto que empieza por KEPT RECOVERY KIT.

En Windows, ejecuta estos comandos en WSL. El mismo compose.yaml que una versión publicada, explicado en detalle: Instalar con Docker Compose.

Home Assistant

Lo que necesitas

Home Assistant OS con Supervisor 2026.10.4 o posterior: las apps necesitan el Supervisor, así que no Home Assistant Container ni Core. Una máquina aarch64 o amd64, como una Raspberry Pi 4 o 5 en 64 bits o una mini PC. 4 GB de memoria; 2 GB funcionan con pocas otras apps. Sin terminal.

  1. Añade el repositorio de Kept. El botón abre tu Home Assistant con él ya rellenado. O ve a Configuración → Apps → Instalar app → ⋮ → Repositorios y agrega https://github.com/keptinventory/kept.

    Añade Kept a Home Assistant
  2. Instalar, luego Iniciar. Busca Kept en la tienda de apps, luego Instalar, luego Iniciar.

    Deberías ver

    En la pestaña Log de la app, la dirección propia de Kept y el código de configuración:

    Kept is at http://homeassistant.local:8080 (change it in Configuration: "Kept's address")
    KEPT SETUP CODE: XXX-XXX
  3. Abrir interfaz web. Kept se abre dentro de Home Assistant, también en la barra lateral.

    Deberías ver

    Para un administrador de Home Assistant, Crear la primera cuenta, sin código. Cualquier otra persona ve Ingresa el código de configuración y escribe el código de la pestaña Log.

La dirección de Kept, https y las copias de seguridad: Instalar como app de Home Assistant.

  • El contenedor se reinicia una y otra vez. Lee su registro: docker compose logs kept. Kept comprueba su configuración antes de arrancar y se detiene con una línea que nombra el primer problema, como kept: invalid environment: KEPT_PUBLIC_URL (ejecuta docker compose run --rm init). Si docker compose up -d se detiene en bootstrap, docker compose logs bootstrap dice por qué. Con menos de 1 GB de memoria, una copia de seguridad puede quedarse sin ella y Docker reinicia Kept (lo que necesita). Más
  • El puerto está en uso. Kept ocupa el puerto 8080 del host. Ejecuta docker compose run --rm init otra vez con una dirección http:// en un puerto libre: escribe la dirección y el puerto (KEPT_HTTP_PORT) en .env. Luego docker compose up -d. En la app de Home Assistant, cambia el puerto en Configuración → Red y ajusta Dirección de Kept para que coincida. Más
  • Permiso denegado. Kept se ejecuta como el usuario 10001 con un sistema de archivos de solo lectura, así que una carpeta que montes en él, como un directorio de copias de seguridad, debe pertenecer al uid 10001. init escribe .env en la carpeta desde la que lo ejecutas: ejecútalo en una carpeta tuya. Más
  • Otros dispositivos no pueden abrirlo. localhost solo se abre en esta máquina. Usa un nombre que los otros dispositivos encuentren, configurado en el DNS de tu router o en el archivo hosts de cada dispositivo, y ejecuta init otra vez con él. Si Kept dice «Este Kept está configurado para dirección. Ábrelo allí.», ábrelo exactamente en esa dirección, o añade la otra en KEPT_EXTRA_ADDRESSES (más de una dirección). Más
  • Un 502 del proxy inverso. Kept habla HTTP sin cifrar en el puerto 8080: apunta el proxy a http://, no a https://, en ese puerto (detrás de un proxy inverso). Kept arranca solo cuando migrate ha terminado; si falló, docker compose logs migrate dice por qué. Más

Todo lo demás: Resolución de problemas.

  • Docker Compose: pon la nueva versión en KEPT_IMAGE de .env, y luego:

    Ventana de terminal
    docker compose pull
    docker compose up -d

    Una versión que cambia compose.yaml lo dice en sus notas: descarga su archivo sobre el tuyo.

  • Desde el código:

    Ventana de terminal
    git pull
    docker build -t kept:local .
    docker compose up -d
  • Kubernetes: cada versión publica un chart con la misma versión, y sus migraciones se ejecutan en un Job antes de que la nueva versión atienda.

  • Home Assistant: Home Assistant ofrece la actualización. Activa Mantener copia de seguridad de la última versión en su diálogo de actualización.

Con un destino de copia de seguridad configurado, Kept toma una instantánea antes de migrar. Actualizaciones y reversión.