CLI · ComandosServicios

Servicios

Listar, inspeccionar, desplegar y operar servicios.

eqs services ls

Lista los servicios de un space, con estado y origen: la imagen, o el repositorio desde el que se construye el servicio.

--space <slug>El space (por defecto: el space activo, fijado con eqs spaces use). Todos los comandos de esta página lo aceptan
shell
eqs services ls --space my-space
eqs services get <svc>

Detalles de un servicio: origen, puerto, escala, su health check (el health path, o un probe TCP) y dónde responde: sus dominios, primero la dirección del servicio (el nombre elegido bajo el dominio de la plataforma, si lo hay), cada uno marcado como dirección, generado o propio, verificado o no verificado, con o sin TLS, y el generado con adónde redirige y, para un servicio expuesto en un puerto TCP, su host:puerto.

shell
eqs services get api-gateway
eqs services create <name>

Crea un servicio y lo despliega desde un origen: un repositorio conectado (se detecta el stack, o se construye un Dockerfile o un archivo Compose que contiene), una imagen ya construida, o un servicio del marketplace.

--repo <owner/name>Un repositorio conectado, construido desde --branch (por defecto: main)
--dockerfile [path]Con --repo: construye desde un Dockerfile (ruta por defecto: Dockerfile)
--composeCon --repo: construye desde un archivo docker-compose
--image <ref>Una imagen ya construida
--catalog <code>Un servicio del marketplace: eqs services catalog los lista, y --catalog-version elige la versión
--set <key=value>Con --catalog: el valor de un campo. Repetible
--port <n>El puerto en el que escucha la app
--internalSolo interno, sin dominio público
--min <n>Mínimo de instancias (0 = escala a cero)
--max <n>Máximo de instancias
--domain <host>Asocia un dominio propio una vez creado el servicio
--health-path <path>La ruta del health check: un GET HTTP en ella dice si una instancia está lista. Sin ella, un probe TCP en el puerto
shell
eqs services create api --image registry.example/api:1.4 --port 8080 --health-path /healthz
eqs services update <svc>

Cambia la imagen o el health path de un servicio e inicia un rollout. Solo cambia lo que se indica, y sin ninguna de las dos opciones el comando se rechaza. Solo se puede fijar una imagen en un servicio desplegado desde una imagen.

--image <ref>La imagen a ejecutar
--health-path <path>La ruta del health check; "" devuelve el servicio al probe TCP
shell
eqs services update api --health-path /healthz
eqs deploy <svc>

Dispara un nuevo despliegue del servicio: uno construido desde un repositorio se reconstruye (build → push → rollout), uno desplegado desde una imagen vuelve a hacer su rollout. Termina en cuanto el rollout queda en cola, salvo que se pase --wait.

--image <ref>Hace de esta imagen la imagen del servicio y hace su rollout (un servicio desplegado desde una imagen)
--waitSigue el despliegue que inició el comando e informa de cada estado por el que pasa. Sale con 0 en cuanto está en marcha, y con error cuando falla (imprimiendo su log) o cuando ninguno empieza en un minuto
--timeout <minutes>Con --wait: cuántos minutos puede tardar el despliegue (por defecto: 30). Pasado ese tiempo, el comando nombra el despliegue y el estado en que está, y sale con error
shell
eqs deploy api --image registry.example/api:1.5 --wait
eqs restart <svc>

Reinicia las instancias del servicio.

shell
eqs restart web-frontend
eqs scale <svc>

Ajusta los límites de instancias (mín–máx). v2.

--min <n>Mínimo (0 = escala a cero)
--max <n>Máximo
shell
eqs scale worker --min 1 --max 6
eqs env ls <svc> · eqs env set <svc> K=V · eqs env rm <svc> K · eqs env apply <svc>

Lista las variables de entorno del servicio (solo los nombres: los valores nunca se devuelven), define o elimina una, y hace su rollout.

--secretCon set: guarda el valor cifrado, en un Secret
--applyCon set: hace el rollout del servicio ahora, en lugar de dejar el cambio pendiente
shell
eqs env set api-gateway LOG_LEVEL=debug
Guardar una variable NO reinicia nada: las instancias en marcha conservan el Secret con el que se renderizaron, y eso solo cambia en un rollout. Define el grupo entero y luego lánzalo una vez con eqs env apply <svc> — hacerlo en cada guardado reiniciaría el servicio a mitad de una cadena de conexión. eqs env pending <svc> dice si aún falta un rollout, y se limpia cuando cualquier rollout recoge las variables.