Skip to main content

Déploiement de votre site Docker avec GitHub Actions: ssh-action et scp-action

· One min read
François Bayart

Eh oui, c'est le 21 mars, jour du printemps ! Et pour fêter ça, j'ai une super découverte à vous partager. Vous savez, déployer un site peut parfois être un vrai casse-tête, mais j'ai trouvé la solution : ssh-action (https://github.com/appleboy/ssh-action) ! 😎

Cet outil génial permet d'exécuter des commandes SSH directement via GitHub Actions pour déployer nos images Docker. Plus besoin de se prendre la tête avec des déploiements manuels à chaque fois qu'on modifie notre code, ssh-action s'occupe de tout, et c'est ultra-rapide !

Allez, jetez un œil, et dites adieu aux galères de déploiement ! 😉

Examples

Voici la partie que j'utilise pour déployer ce site, avec l'usage des labels pour configurer dynamiquement Traefik.

    steps:
- name: Deploy Latest Container on Production VM
uses: appleboy/ssh-action@v0.1.4
with:
host: ${{ secrets.VM_HOST }}
username: ${{ secrets.VM_USERNAME }}
key: ${{ secrets.VM_SSH_KEY }}
script: |
docker pull ghcr.io/famipow/famipow-www:latest
docker stop famipow-www || true
docker rm -f famipow-www || true
docker run -d --name=famipow-www \
-l traefik.backend=famipow-www \
-l traefik.frontend.rule=Host:www.famipow.com,famipow.com \
-l traefik.enable=true \
-l traefik.frontend.entryPoints=https,http \
-l traefik.frontend.entryPoints.http.redirect=https \
ghcr.io/famipow/famipow-www:latest

Resources