docs Referencia de la CLI
Referencia de la CLI
Instala, actualiza y gestiona tu instancia de DeployKit desde la línea de comandos.
Visión general
@deploykit/cli es la CLI oficial de Node para instalar y operar una instancia de DeployKit: install, update, status, logs, restart y uninstall. Gestiona el propio stack de DeployKit, no tus aplicaciones — esas se gestionan desde el dashboard o la API. Solo funciona en Linux (se niega a ejecutarse en macOS o Windows), así que conéctate a tu VPS por SSH y ejecútala allí.
Instalación
# Global install
npm install -g @deploykit/cli
# Or one-shot via npx
sudo npx @deploykit/cli install --domain deploy.example.com --email you@example.comRequisitos: VPS Linux (Ubuntu, Debian, RHEL, Alpine), Node.js >= 20, acceso root o sudo, y puertos 80/443 accesibles desde internet. Todos los comandos excepto status y logs deben ejecutarse como root.
deploykit install
Pone en marcha DeployKit en la máquina actual: instala Git, Docker y Docker Compose si faltan, clona la release seleccionada en /opt/deploykit, genera los secretos en .env (o conserva uno existente, actualizando solo el dominio y el email), construye e inicia todos los servicios y, opcionalmente, crea la cuenta de administrador.
sudo deploykit install \
--domain deploy.example.com \
--email you@example.com \
--admin-email admin@example.com \
--admin-password mypassword123Si omites --domain o --email en una TTY, pasa a preguntas interactivas. Si la cuenta de administrador no puede crearse automáticamente, el instalador lo indica — abre el dashboard y regístrate; el primer usuario se convierte en admin.
| Flag | Descripción | Por defecto |
|---|---|---|
| --domain <domain> | Dominio del dashboard (obligatorio) | — |
| --email <email> | Email de Let's Encrypt (obligatorio) | — |
| --admin-email <email> | Crea previamente la cuenta de administrador | — |
| --admin-password <pwd> | Contraseña del administrador, mín. 8 caracteres | — |
| --dir <path> | Directorio de instalación | /opt/deploykit |
| --tag <tag> | Instala una release concreta, p. ej. v0.6.0 (la v es opcional) | última release |
| --branch <branch> | Instala desde una rama de Git en lugar de una release | — |
Por defecto la CLI instala el tag semver publicado más alto (las pre-releases se ignoran). Un --tag desconocido falla de inmediato y lista los tags que existen; si el repositorio no tiene ninguna release, recurre a master.
REDIS_PASSWORD: DeployKit v0.6.0 requiere REDIS_PASSWORD en .env, que la CLI todavía no genera. Si una instalación o actualización se detiene con Set REDIS_PASSWORD in .env, ejecuta echo "REDIS_PASSWORD=$(openssl rand -hex 32)" | sudo tee -a /opt/deploykit/.env y vuelve a lanzar el comando.
deploykit update
Lleva la instalación a la última release, reconstruye las imágenes, reinicia el stack y espera a la API. Las migraciones de base de datos se ejecutan automáticamente al arrancar la API. Acepta los mismos flags --tag y --branch que install, así que puedes fijar una release o volver a una anterior (rollback).
sudo deploykit update # latest release
sudo deploykit update --tag v0.6.0 # pin (or roll back) to a release
sudo deploykit update --branch master # track unreleased codedeploykit status
Lista los contenedores de DeployKit mediante docker compose ps.
deploykit statusdeploykit logs
Sigue en vivo los logs de todos los servicios de DeployKit (docker compose logs -f). Útil al depurar un despliegue fallido o un worker que se comporta mal.
deploykit logsdeploykit restart
Reinicia todos los servicios de DeployKit en el sitio (docker compose restart). Un reinicio no recoge los cambios en .env — para aplicarlos, recrea los contenedores con docker compose -f docker-compose.prod.yml up -d --build desde /opt/deploykit (consulta Configuración).
sudo deploykit restartdeploykit uninstall
Detiene el stack con docker compose down -v, elimina las imágenes de DeployKit y borra el directorio de instalación. Sin --yes te pide que escribas yes, y se niega a ejecutarse de forma no interactiva. --delete-data también borra los backups de /var/backups/deploykit. Docker, los contenedores desplegados por usuarios y deploykit-network nunca se tocan.
sudo deploykit uninstall --yes
sudo deploykit uninstall --yes --delete-dataAdvertencia: down -v elimina los volúmenes con nombre del stack — incluidos la base de datos PostgreSQL y los datos de Redis — incluso sin --delete-data. Exporta tu configuración (Settings → Configuration export and import) y copia tus backups fuera del servidor antes de desinstalar.
Flags globales
Todos los subcomandos aceptan --dir <path> para apuntar a una ubicación de instalación distinta de la por defecto, y --help para mostrar el uso:
deploykit --help
deploykit install --help
deploykit --version