Documentation

Premier `vectron.toml`

Comprenez la plus petite configuration utile de Vectron et le comportement des chemins, ports et variables d'environnement.

Exemple minimal

[[process]]
name = "web"
command = "npm run dev"

Ce que fait cette configuration

  • [[process]] déclare un processus supervisé
  • name définit l’identifiant stable utilisé dans le status, les logs, les redémarrages et les noms de fichiers
  • command définit le processus enfant à lancer

Valeurs par défaut utiles ici

  • global : table optionnelle
  • log_dir : défaut .vectron/logs
  • port_start : défaut 5000
  • port_step : défaut 100
  • shutdown_timeout_secs : défaut 90
  • instances : défaut 1
  • log_mode : valeur effective par défaut console
  • log_format : valeur effective par défaut text
  • show_timestamps : valeur effective par défaut true
  • port_env : défaut du champ aucun ; variable de port effective PORT sauf surcharge

Résolution des chemins

Les chemins comme log_dir, working_dir et env_file sont résolus relativement au dossier qui contient vectron.toml.

Cela signifie que déplacer le fichier de configuration change le sens de ces chemins relatifs.

Quand vous avez besoin d’un port

Vectron alloue un port pour chaque instance de processus. Quand un processus a un port alloué, Vectron l’exporte dans PORT par défaut.

Si votre app lit PORT depuis son environnement, la configuration minimale peut rester inchangée:

[[process]]
name = "web"
command = "npm run dev"

Utilisez port_env seulement quand le processus enfant attend un autre nom de variable:

[[process]]
name = "web"
command = "npm run dev"
port_env = "APP_PORT"

port_env change le nom de la variable d’environnement. Il n’interpole pas les valeurs dans command. Si une commande doit expandre $PORT directement dans ses arguments, lancez-la explicitement via un shell.

Nommage des processus

Choisissez des noms stables. Ils apparaissent dans:

  • vectron status
  • vectron restart <target>
  • vectron logs --target <target>
  • les noms de fichiers sous .vectron/logs

Ajouts utiles ensuite

Après la configuration minimale, les extensions les plus courantes sont:

  • ajouter instances = N
  • définir group = "nom" et éventuellement labels = [...]
  • ajouter [process.env]
  • définir la readiness avec [process.readiness]
  • définir log_format = "json" ou log_format = "logfmt"

Utilisez la référence complète de vectron.toml pour le comportement exact des champs et les valeurs par défaut. Utilisez les Exemples quand vous voulez des patterns complets mais assez courts pour être adaptés.