CLI · CommandesServices

Services

Lister, inspecter, déployer et opérer des services.

eqs services ls

Liste les services d'un space, avec statut et origine : l'image, ou le dépôt à partir duquel le service est construit.

--space <slug>Le space (par défaut : le space actif, choisi avec eqs spaces use). Toutes les commandes de cette page l'acceptent
shell
eqs services ls --space my-space
eqs services get <svc>

Détails d'un service : origine, port, échelle, son health check (le health path, ou une probe TCP) et où il répond : ses domaines, l'adresse du service en premier (le nom choisi sous le domaine de la plateforme, s'il y en a un), chacun marqué adresse, généré ou personnalisé, vérifié ou non vérifié, avec ou sans TLS, et le généré avec l'adresse vers laquelle il redirige et, pour un service exposé sur un port TCP, son adresse hôte:port.

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

Crée un service et le déploie depuis une origine : un dépôt connecté (la stack est détectée, ou un Dockerfile ou un fichier Compose qu'il contient est construit), une image déjà construite, ou un service du marketplace.

--repo <owner/name>Un dépôt connecté, construit depuis --branch (par défaut : main)
--dockerfile [path]Avec --repo : construit depuis un Dockerfile (chemin par défaut : Dockerfile)
--composeAvec --repo : construit depuis un fichier docker-compose
--image <ref>Une image déjà construite
--catalog <code>Un service du marketplace : eqs services catalog les liste, et --catalog-version choisit la version
--set <key=value>Avec --catalog : la valeur d'un champ. Répétable
--port <n>Le port sur lequel l'application écoute
--internalInterne uniquement, sans domaine public
--min <n>Minimum d'instances (0 = mise à l'échelle à zéro)
--max <n>Maximum d'instances
--domain <host>Associe un domaine personnalisé une fois le service créé
--health-path <path>Le chemin du health check : un GET HTTP dessus indique si une instance est prête. Sans lui, une probe TCP sur le port
shell
eqs services create api --image registry.example/api:1.4 --port 8080 --health-path /healthz
eqs services update <svc>

Change l'image ou le health path d'un service et lance un rollout. Seules les options données changent, et sans aucune des deux la commande est refusée. Une image ne peut être définie que sur un service déployé depuis une image.

--image <ref>L'image à exécuter
--health-path <path>Le chemin du health check ; "" remet le service sur la probe TCP
shell
eqs services update api --health-path /healthz
eqs deploy <svc>

Déclenche un nouveau déploiement du service : un service construit depuis un dépôt est reconstruit (build → push → rollout), un service déployé depuis une image refait son rollout. Rend la main dès que le rollout est en file d'attente, sauf avec --wait.

--image <ref>Fait de cette image l'image du service et la déploie (un service déployé depuis une image)
--waitSuit le déploiement lancé par la commande en signalant chaque état par lequel il passe. Sort avec 0 une fois qu'il est en marche, et en erreur quand il échoue (en affichant son log) ou quand aucun ne démarre en une minute
--timeout <minutes>Avec --wait : combien de minutes le déploiement peut prendre (par défaut : 30). Au-delà, la commande nomme le déploiement et l'état où il se trouve, et sort en erreur
shell
eqs deploy api --image registry.example/api:1.5 --wait
eqs restart <svc>

Redémarre les instances du service.

shell
eqs restart web-frontend
eqs scale <svc>

Ajuste les limites d'instances (min–max). v2.

--min <n>Minimum (0 = mise à l'échelle à zéro)
--max <n>Maximum
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>

Liste les variables d'environnement du service (les noms seulement : les valeurs ne sont jamais renvoyées), en définit ou en supprime une, et les applique par un rollout.

--secretAvec set : stocke la valeur chiffrée, dans un Secret
--applyAvec set : lance le rollout du service tout de suite, au lieu de laisser le changement en attente
shell
eqs env set api-gateway LOG_LEVEL=debug
Enregistrer une variable ne redémarre RIEN : les instances en cours gardent le Secret avec lequel elles ont été rendues, et cela ne change qu'au moment d'un rollout. Définissez tout le groupe, puis lancez-le une fois avec eqs env apply <svc> — le faire à chaque enregistrement redémarrerait le service au milieu d'une chaîne de connexion. eqs env pending <svc> indique s'il reste un rollout à faire, et se vide dès qu'un rollout quelconque reprend les variables.