APP_ENV=production
APP_DEBUG=false
APP_URL=https://votre-app.railway.app
APP_TIMEZONE=UTC
APP_LOCALE=en
DB_HOST=votre-db-host
DB_PORT=3306
DB_DATABASE=pterodactyl
DB_USERNAME=pterodactyl
DB_PASSWORD=votre-mot-de-passe
CACHE_DRIVER=redis
SESSION_DRIVER=redis
QUEUE_CONNECTION=redis
REDIS_HOST=votre-redis-host
REDIS_PORT=6379
REDIS_PASSWORD=votre-redis-password
MAIL_DRIVER=smtp
MAIL_HOST=smtp.example.com
MAIL_PORT=587
MAIL_USERNAME=votre-email
MAIL_PASSWORD=votre-password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@example.com
MAIL_FROM_NAME=Pterodactyl- Base de données MySQL (version 8.0+)
- Redis (pour cache et sessions)
- Service SMTP (pour les emails)
- Créer un nouveau projet sur Railway
- Connecter votre repository GitHub
- Ajouter un service MySQL depuis Railway
- Ajouter un service Redis depuis Railway
- Configurer les variables d'environnement
- Déployer
Une fois déployé, vous devrez :
- Créer un utilisateur admin :
railway run php artisan p:user:make- Créer une location :
railway run php artisan p:location:make- Configurer vos nodes (serveurs Wings)
- Le port est automatiquement défini par Railway via la variable
$PORT - Les migrations s'exécutent automatiquement au démarrage
- Les caches sont optimisés au démarrage
- PHP-FPM et Nginx sont configurés pour fonctionner ensemble
Si le déploiement échoue :
- Vérifier les logs Railway
- Vérifier que toutes les variables d'environnement sont définies
- Vérifier la connexion à la base de données
- Vérifier la connexion à Redis
Pour de meilleures performances :
- Utiliser Redis pour cache et sessions
- Activer les caches Laravel (déjà fait automatiquement)
- Configurer un CDN pour les assets statiques
- Utiliser un service email transactionnel (SendGrid, Mailgun, etc.)