DevTools · VPS

Guide 2026 : monter son environnement de programmation IA sur un VPS, de l'inscription au développement distant

2026.11.02 · environ 12 min

N'achetez pas un VPS pour le débit. Décidez d'abord quelle couche la machine exécute pour l'agent de code. La suite sépare compte, taille, entrée distante, secrets et recette, puis transforme l'inscription en une liste de sept étapes.

Une console distante dans une allée de centre de données, image d'un environnement de code toujours allumé sur VPS

En 2026, un environnement de programmation IA échoue rarement à cause du modèle. L'ordinateur portable se met en veille, le répertoire personnel mélange fichiers privés et dépôt, et une clé d'API atterrit dans l'historique du shell. Un VPS Linux peut séparer l'exécution toujours allumée de l'éditeur que vous tenez. Ce guide commence à l'inscription chez le fournisseur et se termine quand VS Code ou Cursor modifie des fichiers sur cette machine. La recette n'est pas « SSH répond ». La recette est une session tmux encore là après la déconnexion du portable, plus un instantané pris avant qu'un agent ne fasse un grand changement.

7
étapes de l'inscription au distant
8 Go
plancher de RAM pour le quotidien
dev
utilisateur non root de l'agent

Pourquoi l'environnement de code IA quitte le portable

L'ancienne installation met un CLI sur le portable et laisse l'agent écrire directement dans le répertoire personnel. La nouvelle pose l'arbre de travail, les caches de dépendances et la session longue sur un VPS qui ne fait que du développement. Le portable affiche et envoie les touches. Le conflit n'est pas « le cloud est-il cher ». Le conflit est la frontière d'exécution. Fermer le capot tue les processus locaux. Une mise à jour système coupe une tâche longue. Le même disque garde les sessions du navigateur et les dépôts privés. Un VPS les retire de l'ensemble que l'agent peut écrire par défaut.

Un VPS ne résout pas l'autre classe de travail. Un VPS Linux n'a pas macOS : il ne signe pas iOS et n'a pas Xcode. Ce n'est pas non plus un cluster d'entraînement. Un agent qui appelle un modèle hébergé dépense de la RAM, du disque et une session stable. Il ne dépense pas un GPU de centre de données. Si le but est l'inférence locale plutôt que l'édition d'un dépôt distant, commencez par le guide d'achat PC IA au lieu d'acheter une machine graphique pour écrire du code applicatif.

La région décide du ressenti avant le nom du forfait. La latence de Remote SSH se situe entre vous et le VPS. La latence de l'API du modèle se situe entre le VPS et l'hôte du modèle. Si vous êtes en Asie de l'Est et que la machine est dans l'est des États-Unis, les frappes ralentissent d'abord, même si le modèle est rapide. Choisissez une région proche de votre chaise, puis parlez du nombre de cœurs.

Traitez le VPS comme un appareil de développement dont le propriétaire est connu, pas comme un ordinateur de secours pour le mail et le chat. Dès que les connexions personnelles et l'agent partagent un répertoire personnel, vous avez recréé le problème du portable sur le matériel de quelqu'un d'autre. Une machine, un travail, un utilisateur nommé dev. Cette contrainte rend la recette ultérieure possible.

Découper l'environnement en cinq couches

Achetez par couche, pas par l'adjectif de la publicité. Hôte de rebond, VPS de code, machine de build, nœud macOS et cloud GPU répondent à des questions différentes. Les comparer comme un seul « serveur cloud », c'est faire tourner Node sur 2 Go, ou compiler iOS sur Linux.

CoucheCe qu'elle possèdeSymptôme si elle est trop petiteCe qui n'y appartient pas
RebondSSH seulementL'installateur est tué au milieu du téléchargementAgent, base de données, conteneurs
VPS de codegit, runtimes, un agent CLI, tmuxTests parallèles et conteneurs se disputent la RAMXcode, entraînement de modèle
Machine de buildPlus de cœurs, plus de RAM, conteneursL'édition interactive devient lenteConnexions navigateur du quotidien
Nœud macOSSignature, simulateur, chaîne AppleL'outil est simplement absent de LinuxLe traiter comme un hôte Linux général
Cloud GPUEntraînement et grosse inférenceLe GPU tourne à vide entre deux correctionsÉditions ordinaires de dépôt

Le plancher pratique de la couche code est 4 vCPU, 8 Go de RAM et environ 80 Go de disque. Un ou deux gigaoctets, c'est un hôte de rebond. Le disque doit tenir node_modules, les caches de langage et quelques checkouts. Quand le système de fichiers racine dépasse à peu près quatre-vingts pour cent, videz les caches avant d'agrandir le disque. N'attendez pas qu'un installateur échoue avec une erreur vague qui ressemble à un problème réseau.

Le nombre de cœurs compte moins qu'on ne le croit pour un agent qui passe le plus clair de son temps à attendre un modèle hébergé. Résidents : serveur d'éditeur, serveur de langage, Node ou Python, et le processus de l'agent. C'est pourquoi 8 Go est un plancher et non un luxe. Si vous voulez aussi Docker et une suite de bout en bout de niveau navigateur sur la même machine, montez d'un cran. Ne découvrez pas la limite au milieu d'un refactor.

L'entrée distante est la ligne de partage, pas le modèle

L'habileté du modèle n'est pas la ligne de partage. La ligne de partage est la machine qui porte la frontière d'exécution. Une personne peut avoir Cursor et Claude Code. Si l'un édite une copie locale et l'autre le checkout du VPS, le diff que vous voyez n'est pas celui que l'agent croit avoir écrit.

OutilEntréeExécutionContextePour qui
VS Code Remote SSHÉditeur local attaché au VPSTerminal, débogage et extensions tournent à distanceLe dépôt distantQui veut garder un éditeur connu
Cursor Remote SSHLe même chemin SSHComplétion et agent modifient les fichiers distantsL'espace de travail distantQui veut l'éditeur et l'agent sur un seul checkout
Claude Code ou Codex CLItmux sur le VPSPeut modifier des fichiers et lancer des testsLe répertoire ouvert exprèsTâches longues qui doivent survivre au capot fermé
Mac distantmacOS distantXcode, signature, simulateur iOSUn projet AppleChaînes d'outils qui exigent macOS

Cet article ne classe pas les modèles. La différence d'entrée, d'exécution et de contexte est dans la comparaison Pi, Claude Code et Codex. Ici, il suffit de choisir un CLI, de le mettre dans tmux, et de pointer l'éditeur vers le même checkout de la même machine.

La première connexion Remote SSH demande de faire confiance à une clé d'hôte. Comparez l'empreinte avec celle de la console du fournisseur avant d'accepter. Ensuite, l'éditeur doit ouvrir le dossier distant, pas une copie synchronisée qui dérive. Si la barre d'état dit encore que la fenêtre est locale, vous allez éditer le mauvais disque.

Choisir la machine selon le travail, pas selon le nom du forfait

Si vousChoisissezNe choisissez pas
Discutez avec un modèle sans modifier de dépôtLe client localUn VPS, quel qu'il soit
Écrivez du web ou du backend et voulez que les tests continuent capot ferméUn VPS de code à partir de 8 Go, plus tmuxUn hôte de rebond à 1 Go
Faites tourner conteneurs et tests de bout en bout en même tempsUne machine de build avec un cran de RAM en plusPartager 8 Go avec l'édition interactive
Compilez iOS ou lancez XcodeUn Mac distant louéUn VPS Linux
Entraînez des poidsUn cloud GPUCe VPS de code
Êtes une équipe qui a besoin d'automatisation longue, pas d'une seule personne en édition distanteL'automatisation sur un Mac cloudFourrer le pipeline dans un VPS personnel

La différence entre un VPS de code personnel et un portable, c'est la session et la frontière de disque, pas « plus d'intelligence ». Un pipeline d'équipe exige aussi des droits, des journaux et une trace de qui peut se connecter. C'est une autre machine. Ne réactivez pas le login par mot de passe sur l'utilisateur dev de ce guide juste parce qu'une deuxième personne a besoin d'accès.

Une pile qui suffit

Utilisez Ubuntu 24.04 LTS. L'utilisateur s'appelle dev. sudo demande encore un mot de passe, et l'agent ne tourne pas en root. SSH est uniquement ed25519. Le login par mot de passe sera coupé, mais seulement après qu'un login par clé a déjà réussi et que la console web du fournisseur est encore ouverte. Les runtimes sont git, Python 3, Node 22 LTS et tmux. La clé d'API vit dans ~/.config/ai-dev/provider.env, le répertoire est en mode 700, le fichier en mode 600, et le chemin est dans la liste d'ignorance du dépôt.

Côté éditeur, utilisez Remote SSH dans VS Code ou Cursor. Le bloc Host vit dans ~/.ssh/config sur votre ordinateur, pas sur le VPS. Les tâches longues vont dans une session tmux au nom fixe, par exemple agent. Avant de laisser l'agent faire une modification large, prenez un instantané dans la console du fournisseur.

Installez Node depuis la distribution ou selon les instructions NodeSource du moment pour Node 22 LTS. Acceptez l'installation avec node -v, pas avec « le script n'a pas affiché d'erreur ». La même règle vaut pour Python et git. Une chaîne de version est une observation. Un installateur silencieux n'en est pas une.

Trois factures, pas une
Le prix mensuel du VPS, l'usage de l'API du modèle et un nœud macOS sont trois factures. Livraison et prix d'un nœud Mac sont sur le centre d'aide et la page des tarifs. Ne les pliez pas dans le tableau de taille de ce VPS.

Cinq erreurs qui annulent l'environnement

  1. Faire tourner la pile de code sur la RAM d'un hôte de rebond. Node meurt au milieu de l'installation. Cela ressemble à une panne réseau. C'est la mémoire.
  2. Couper le mot de passe avant que la clé fonctionne. L'ordre : une nouvelle session par clé réussit, l'ancienne fenêtre de console reste ouverte, puis vous changez sshd.
  3. Mettre la clé d'API sur la ligne de commande. Elle entre dans l'historique du shell, et l'agent peut lire cet historique. La clé n'entre dans la session que depuis le fichier en mode 600.
  4. Donner à dev un sudo sans mot de passe. L'agent peut lancer des commandes. Un sudo sans mot de passe signifie qu'une commande malheureuse peut réécrire sshd ou le pare-feu. Gardez le mot de passe sudo.
  5. Cloner un projet iOS sur Linux et chercher xcodebuild. L'outil n'apparaîtra pas. Ces projets commencent sur un Mac distant.

Une sixième erreur, plus discrète, est de laisser l'agent voir tout le répertoire personnel. Ouvrez le dépôt jetable comme espace de travail. Les caches et le fichier de clé peuvent être à côté, mais ils ne font pas partie du contexte du prompt ni de l'arbre git. Si la première action de l'agent est de « nettoyer » les dotfiles, vous lui avez montré trop de disque.

Sept étapes de l'inscription au développement distant

Chaque étape a une observation. Ne commencez pas la suivante avant de l'avoir vue.

  1. S'inscrire. Activez la double authentification, choisissez une région proche et notez l'IP publique. La boîte de facturation et les codes de récupération restent dans votre gestionnaire de mots de passe, pas sur la machine que vous allez confier à un agent.
  2. Clés. Sur votre ordinateur, générez une clé ed25519 et ne collez que le fichier .pub chez le fournisseur. La clé privée reste sur le portable.
  3. Utilisateur. Créez dev et ajoutez-le à sudo. Après un login par clé réussi en tant que dev, désactivez le login root et le login par mot de passe. Gardez une fenêtre de console déjà ouverte jusqu'à ce que le changement soit prouvé.
  4. Runtimes. Installez git, une chaîne de compilation, Python, tmux et Node 22 LTS. Acceptez-les avec des commandes de version, pas avec un installateur silencieux.
  5. Dépôt. En tant que dev, clonez un dépôt de test jetable et lancez ses tests existants. Confirmez que l'agent recevra plus tard ce répertoire, pas tout le home.
  6. Agent. Installez un CLI selon la documentation actuelle du fournisseur. La clé est lue depuis le fichier env en mode 600. Démarrez-le dans tmux. La première session doit expliquer la forme du dépôt, pas le refactorer.
  7. Édition distante. Ajoutez un Host à la configuration SSH locale, connectez VS Code ou Cursor, modifiez un fichier et commitez-le sur une branche de test. Déconnectez le portable, puis lancez tmux attach -t agent depuis la console. Si la session est encore là, prenez un instantané. Cette observation est l'environnement terminé.
Portable : générer la clé, ne jamais envoyer la moitié privée
ssh-keygen -t ed25519 -C "ai-dev-vps" -f ~/.ssh/id_ed25519_ai_vps
# Envoyer seulement id_ed25519_ai_vps.pub
VPS : utilisateur et runtimes. sshd seulement après un login par clé
sudo adduser dev
sudo usermod -aG sudo dev
sudo apt update
sudo apt install -y git tmux build-essential python3 python3-venv python3-pip
# Node 22 LTS via la distribution ou les instructions NodeSource du moment
node -v
python3 --version
git --version
Configuration SSH du portable. L'éditeur se connecte à cet Host
Host ai-vps
  HostName YOUR_VPS_IP
  User dev
  IdentityFile ~/.ssh/id_ed25519_ai_vps
  IdentitiesOnly yes
Fichier de clé. Remplacez le placeholder. Ne le commitez pas
mkdir -p ~/.config/ai-dev
chmod 700 ~/.config/ai-dev
install -m 600 /dev/null ~/.config/ai-dev/provider.env
# Une ligne dans provider.env, par exemple ANTHROPIC_API_KEY=replace-me
tmux new -s agent
Avant de couper le mot de passe
Ouvrez une seconde session par clé avant d'écrire PermitRootLogin no, PasswordAuthentication no et PubkeyAuthentication yes dans /etc/ssh/sshd_config.d/99-ai-dev.conf. Laissez la console du fournisseur ouverte pour ne pas fermer la seule porte.

Un pare-feu qui autorise SSH et refuse le reste fait partie de la même étape, ce n'est pas un projet séparé. Si le fournisseur filtre déjà le trafic dans son panneau, n'empilez pas une seconde règle qui vous enferme dehors. Changez un contrôle, testez le login par clé, puis le suivant. La console est le retour arrière de cette partie, comme l'instantané est le retour arrière de l'agent.

Questions qui décident le forfait

Un VPS de 1 Go ou 2 Go suffit-il pour coder avec l'IA ?

Non. Cette taille ne garde SSH en vie. Dès que Node, un serveur de langage et un agent résident ensemble, 8 Go est le plancher du travail quotidien. Docker et les tests parallèles exigent le palier au-dessus.

Un agent de code a-t-il besoin d'un VPS GPU ?

Pas s'il appelle un modèle hébergé. Laissez les GPU à l'entraînement et à la grosse inférence locale. Le travail quotidien sur un dépôt achète de la RAM, du disque et une région proche.

Puis-je compiler iOS sur un VPS Linux ?

Non. La signature, le simulateur et xcodebuild appartiennent à macOS. Prenez un Mac distant. Ne passez pas un après-midi à chercher sur Linux un outil qui n'y sera jamais.

Est-il sûr de mettre des clés d'API sur le VPS ?

Seulement si vous contrôlez la machine, si les droits sont serrés et si le dépôt ne peut pas committer le fichier. Mode 600 pour le fichier, 700 pour le répertoire. N'écrivez pas la clé dans l'historique du shell et ne la donnez pas à un agent lancé en root.

Une connexion SSH réussie veut-elle dire que l'environnement est prêt ?

Non. La recette, c'est une session tmux qui survit à la déconnexion du portable, un dépôt de test que l'agent peut modifier, et un instantané pris avant cette modification.

Où cela laisse la décision

Décidez la frontière d'exécution, puis inscrivez-vous. Un VPS de code convient aux dépôts Linux qui doivent continuer capot fermé. Xcode et la signature vont sur un nœud macOS. L'entraînement va sur un GPU. Le développement distant est en place quand les sept étapes ont une observation, pas quand la bannière SSH apparaît. Une porte ouverte signifie seulement que la porte est ouverte.

Lectures liées

Si la chaîne d'outils exige macOS, prenez un Mac distant

Un VPS Linux peut lancer git, les tests et un agent CLI. Il ne signe pas iOS et n'héberge pas Xcode. Quand le projet exige la chaîne Apple, louez un Mac dédié au lieu de forcer le dépôt sur Linux.

Voir la location Mac · Voir les tarifs

DevTools · VPS

Si la chaîne d'outils exige macOS, prenez un Mac distant

Apple Silicon dédié · développement distant · au mois

Voir la location Mac
Mac Voir la location Mac