🏴‍☠️ Déployer Laravel 10 Comme un Pirate: Méthode SSH 🏴‍☠️

Martin L
2 min readJan 5, 2024

--

Ahoy matelots Laraveliens! Vous êtes prêts à hisser les voiles et déployer votre Laravel 10 tel un fier pirate? Embarquez avec moi dans ce voyage épique, où nous utiliserons GitHub Actions pour larguer notre trésor sur un serveur dédié via SSH.

🚀 Préparatifs

  1. Boussole Laravel: Assurez-vous d’avoir Laravel 10 prêt à lever l’ancre sur votre bateau de développement.
  2. Trésor GitHub: Amassez votre trésor Laravel sur GitHub, créez un repo pour votre projet.
  3. Clés du Capitaine SSH: Générez une paire de clés SSH sur votre serveur et ajoutez la clé publique à GitHub.

☠️ Déployement Automatique avec GitHub Actions

  1. Navigateur GitHub: Ouvrez les voiles sur GitHub, naviguez jusqu’à votre repo, et cliquez sur l’onglet “Actions”.
  2. Trésor YAML: Créez un fichier .github/workflows/deploy.yml dans votre repo. Ce fichier sera votre carte au trésor pour GitHub Actions.
name: ☠️ Déployer comme un Pirate
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: ⚓️ Checkout le code
uses: actions/checkout@v2
- name: ☠️ Déployer avec SSH
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SSH_HOST }}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
script: |
cd /chemin/vers/votre/projet
git pull origin main
composer install
php artisan migrate --force
  1. Secrets du Capitaine: Allez dans les paramètres de votre repo, naviguez vers “Secrets”, et ajoutez SSH_HOST, SSH_USERNAME, et SSH_PRIVATE_KEY pour garder vos informations en sécurité.
  2. Push du Capitaine: Faites un push vers votre repo, et regardez votre GitHub Actions partir à l’abordage!

🎉 Célébrez Votre Succès

Félicitations, Capitaine Laravel! Votre trésor est maintenant déployé automatiquement sur votre serveur dédié à chaque push. Hissez les voiles et célébrez ce succès comme un vrai pirate du code!

--

--

Martin L

👨‍💻 I'm Martin 🐶 🌐 I'm a 28-year-old web developer based in Europe 🍫 💻 My expertise lies in the field of web development,