Aller au contenu
use-cases / onboard-developer-one-link / hero
SNAPSHOTS · COPIE DE CONTENEUR

Intégrer un développeur avec un lien

Snapshotez votre baseline développeur une fois. À partir de là, chaque nouvel embauché reçoit une URL. Il clique dessus sur le laptop qu'il a et il se retrouve dans un conteneur frais qui est un clone de la baseline — base de code, dépendances, variables d'env, base de données amorcée, VSCode dans le navigateur. Écrire du code en cinq minutes. Pas de configuration.

Lire la doc snapshots
use-cases / onboard-developer-one-link / mechanism

Comment une URL devient un laptop fonctionnel

Les snapshots Hoody capturent un conteneur entier — fichiers sur disque, comptes utilisateurs, fichiers d'unité systemd, base de données amorcée. La copie de conteneur clone ce snapshot dans un conteneur frais par développeur. Le lien dans l'email est la route vers ce conteneur frais.

POST /api/v1/containers/[baseline_id]/copy4 ÉTAPES · UN APPEL D'API
01

Snapshotez la baseline une fois

POST .../snapshots

Prenez un snapshot nommé de votre conteneur de référence — alias-le dev-baseline. Ré-exécutez quand la baseline change.

02

Copiez à chaque nouvel embauché

POST .../copy [ source_snapshot ]

Un appel d'API clone le snapshot dans un conteneur frais sous le projet du nouveau développeur.

03

Son URL est le conteneur

alex-laptop.containers.hoody.com

Le conteneur est livré avec une URL publique d'emblée. Collez-la dans Slack. Il clique. Il est dedans.

04

Terminal, fichiers, navigateur

ttyd · webview · ssh

hoody_kit allume automatiquement les endpoints du terminal, du navigateur de fichiers, et VSCode-dans-le-navigateur. Rien à installer sur le laptop.

onboard-alex.sh
# 1. Snapshot the baseline (do this once, refresh when you upgrade Node)
curl -X POST "$API/api/v1/containers/$BASE/snapshots" \
  -H "Authorization: Bearer $TOKEN" \
  -d '[ "alias": "dev-baseline" ]'

# 2. Copy the snapshot into a fresh container for the new hire
curl -X POST "$API/api/v1/containers/$BASE/copy" \
  -H "Authorization: Bearer $TOKEN" \
  -d '[
    "target_project_id": "$ACME",
    "name": "alex-laptop",
    "source_snapshot": "dev-baseline",
    "copy_firewall_rules": true,
    "copy_network_rules": true
  ]'

# 3. The response carries the container URL. Email it. That's onboarding.
# => https://alex-laptop.containers.hoody.com

Deux POST et une URL. Le snapshot de baseline est le contrat ; la copie de conteneur est le constructeur ; le sous-domaine résultant est ce qui atterrit dans l'email de bienvenue. Pas de bastion à provisionner, pas de repo de dotfiles à cloner, pas de licence Docker Desktop à négocier.

use-cases / onboard-developer-one-link / contrast

D'un mur d'étapes à une seule phrase

Le README qui était livré avec chaque repo emportait aussi les modes de défaillance. La moitié des lignes étaient des contournements pour le laptop que le nouvel embauché avait apporté. L'URL est plus courte parce que le laptop n'est plus dans le tableau — l'environnement, oui.

README.md · setup47 ÉTAPES
  • 01Installer Xcode CLI tools
  • 02Installer Homebrew
  • 03brew install node@20 pnpm postgres@15
  • 04Ajouter les lignes PATH au .zshrc
  • 05createdb acme_dev
  • 06Cloner le repo seed-data
  • 07Lancer le loader (prend 25 min)
  • 08Demander dans #devops le .env de staging
  • ...39 lignes de plus que vous vous tromperez
TEMPS MOYEN AU PREMIER COMMITDEUX JOURS
DEVIENT
l'email de bienvenue · v21 LIGNE

POUR : alex@acme.com · OBJET : BIENVENUE

Bienvenue dans l'équipe. Ouvre ceci quand tu es prêt à écrire du code :

https://alex-laptop.containers.hoody.com

— infra@acme

TEMPS AU PREMIER COMMITCINQ MINUTES
use-cases / onboard-developer-one-link / dayone
JOUR UN · LE LUNDI D'ALEX

Le README qui faisait 47 étapes est désormais une ligne : ouvre cette URL.

08:59 — laptop ouvert, lien dans le presse-papiers09:04 — premier commit poussé
Premier commit, à la montreCINQ MINUTES · ZÉRO INSTALLATION
0108:59L'URL atterrit dans la boîte mailpas de setup laptop
0209:00Ouvrir l'URL — déjà dedansle conteneur est l'espace de travail
0309:04Premier commit pousséécrire du code, pas configurer
FICHIERSBase de code déjà clonée, branche sur main
DÉPSNode, pnpm, Postgres, Redis pré-installés
DONNÉESBase amorcée chargée, .env de staging injecté
use-cases / onboard-developer-one-link / replaces

Ce que cela remplace

Chacun de ces outils essaie d'amener un environnement fonctionnel sur le laptop d'un nouveau développeur. Chacun coûte du setup, de la licence, ou du glue DIY. Une URL de snapshot ne coûte rien de tout cela — l'environnement tourne déjà.

  • GitHub CodespacesFacturation au siège, devcontainer.json à maintenir
  • GitpodTarification au workspace, .gitpod.yml à déboguer
  • DaytonaPlan de contrôle auto-hébergé à exécuter
  • CoderTemplates et infrastructure provisioner à surveiller
  • Setup DevcontainerLicence Docker Desktop + danse VSCode par laptop
  • Développement localDeux jours de brew, paths, demandes .env dans #devops
  • Docs d'onboarding47 étapes qui dérivent dès que quelqu'un met à jour la baseline
use-cases / onboard-developer-one-link / cta

Arrêtez d'expédier des étapes de setup README. Expédiez une URL.

use-cases / onboard-developer-one-link / related

Découvrez les autres