---
title: "Quitter Railway par MCP, sans réécrire votre appli"
url: https://while.sh/fr/guides/migrer-de-railway/
author: "Aloïs Oddon, cofondateur de Nextmap"
updated: 2026-11-05
---

# Quitter Railway sans réécrire votre appli, depuis votre agent IA

Vos clients veulent leurs données en France, ou vous voulez un agent qui met en ligne pour vous ? Branché à while par MCP, il reprend votre appli Railway telle quelle, recopie la base et la met en ligne.

## Prérequis

- Une appli sur Railway, en Node.js, Python ou Go, ou avec son Dockerfile.
- La ligne de commande de Railway, pour lire vos variables et exporter la base.
- Un agent IA qui travaille dans un terminal : Claude Code, Codex, Cursor ou Gemini CLI.

## Étape 1 : Donnez ces instructions à votre agent

Ouvrez votre agent dans le dossier de votre appli, et collez-lui ces instructions :

```text titre="Instructions"
Connecte-toi à while avec mon compte (while.sh/agents), puis mets mon appli en ligne.
```

Avec votre compte, votre agent ajoute lui-même le serveur MCP de while. Au premier appel à while, une page s'ouvre dans votre navigateur : choisissez « Une nouvelle appli », puis cliquez sur Autoriser.

## Étape 2 : Ouvrez votre appli

Votre agent vous donne l'adresse de votre appli, par exemple `https://mon-appli.while.cloud`, en HTTPS.

## Ce que fait votre agent

Il lit votre railway.json ou votre railway.toml, s'il y en a un (source 1), et reprend ses réglages dans while.yaml :

| Dans railway.json | Dans while.yaml |
|---|---|
| `startCommand` | la commande du service, `command` |
| `healthcheckPath` | le chemin de santé, `health.path` |
| `cronSchedule` | une tâche planifiée, dans `crons` |
| `dockerfilePath` | le Dockerfile du service, `dockerfile` |

```yaml titre="while.yaml"
apiVersion: while/v1
project: mon-appli
services:
  - name: web
    health:
      path: /health
databases:
  - name: main
```

## Recopier votre base Railway

> Vous, à votre agent : Recopie notre base Railway sur while.

Votre agent exporte la base avec `pg_dump`, par l'adresse publique de la base (`DATABASE_PUBLIC_URL`) ou par un tunnel de la ligne de commande de Railway, puis la recharge dans while (source 3).

## Reporter vos variables

> Vous, à votre agent : Reporte nos variables Railway.

Votre agent lit vos variables avec `railway variable list` (source 2) et les reporte dans while. Les variables scellées n'en sortent pas (source 2) : celles-là, et vos clés secrètes, vous les saisissez vous-même dans while, et il ne les voit jamais.

## Passer sur votre propre domaine

> Vous, à votre agent : Mets l'appli sur www.acme.fr.

Votre agent déclare le domaine, vous ajoutez les enregistrements DNS qu'il vous donne, et le certificat HTTPS suit.

## Revenir à la version d'avant

> Vous, à votre agent : Reviens à la version d'avant.

Dans les 30 minutes qui suivent une mise en ligne, la version d'avant revient en une seconde. Ensuite, en quelques secondes.

## Prochaines étapes

- [Comparer Railway et while](/fr/comparatifs/while-vs-railway/)
- [Les prix de Railway](/fr/comparatifs/prix-railway/)
- [Restaurer une base PostgreSQL](/fr/guides/restaurer-une-base/)

## Sources

1. [Railway, la configuration dans le code (railway.json, railway.toml)](https://docs.railway.com/config-as-code/reference), 2026-11-05
2. [Railway, la commande railway variable](https://docs.railway.com/cli/variable), 2026-11-05
3. [Railway, sauvegarder et restaurer Postgres](https://railway.com/guides/postgres-backups-restores), 2026-11-05

## Questions

### Mon appli n'a ni railway.json ni railway.toml. Est-ce un problème ?

Non : votre agent part de votre code, que while reconnaît d'office en Node.js, Python ou Go, ou de votre Dockerfile.

### Faut-il écrire un Dockerfile ?

Non, une appli Node.js, Python ou Go est reconnue d'office. Si votre appli a déjà le sien, while s'en sert.

### Puis-je garder Railway le temps de vérifier ?

Oui, votre appli tourne sur while à sa propre adresse avant que vous basculiez votre domaine.
