Je vais créer des actions GitHub CI/CD pour déployer automatiquement sur AWS EC2, Docker GitHub Actions GitLab
Développeur full stack : Supabase, Docker, GitHub
À propos de ce service
Vos publications sortent manuellement depuis un ordinateur portable et un mauvais push peut mettre votre production en difficulté. J’ai mis en place une pipeline GitHub Actions CI/CD où une fusion dans main construit, teste et déploie automatiquement, et personne n’a besoin de solliciter quelqu’un pour pousser.
Le processus échoue lorsque les étapes de déploiement reposent sur la mémoire d’une seule personne. Je les ai intégrées dans un workflow qui cohabite avec votre code.
Vous obtenez :
- lint et tests à chaque pull request
- l’image Docker est construite lors de la fusion, poussée vers Amazon ECR avec une balise de version claire
- main se déploie automatiquement en staging (service ECS ou EC2)
- production nécessite une validation manuelle
- rollback en un clic vers l’image précédente
- les secrets sortent du code et passent dans les secrets des Actions ou dans Systems Manager
- accès AWS via un rôle IAM en principe de moindre privilège, sans clés longues à stocker n’importe où
- un README : fonctionnement et comment ajouter un service
Processus : je lis votre Dockerfile et vos scripts, je construis le workflow sur une branche, je réalise une mise en production réelle sur staging pendant que vous observez, puis je le remets entre vos mains.
Ce dont j’ai besoin : accès au dépôt, un rôle ou un utilisateur IAM pour ECR et ECS, vos commandes de test et de lint, et qui approuve les mises à jour.
Envoyez-moi un message avant de commander afin que je puisse confirmer votre stack et l’étendue.
Outils:
Docker
•
GitLab
•
GitHub
Frameworks:
Npm
Langage de programmation:
Bash
•
JavaScript
•
PHP
•
Python
Expertise:
Installation
•
Développement
•
Configuration
FAQ
Traduction automatique
Quel accès est nécessaire et est-ce sécurisé ?
Accès au dépôt et un rôle IAM limité à ECR et ECS. Le pipeline se connecte avec ce rôle, de sorte qu’aucune clé AWS à long terme ne réside dans GitHub. Vous révoquez les deux à la fin. Je n’ai jamais besoin de votre compte racine ni de vos données d’application.
Pouvez-vous écrire mes tests ?
Non. J’intègre vos commandes de lint et de test existantes dans le pipeline. Si vous n’en avez pas, le pipeline construit et déploie tout de même, et je laisse un créneau clair où les tests pourront être ajoutés plus tard. L’écriture des tests n’est pas incluse dans ce service.
Ici vous construisez mon infrastructure AWS ?
Non. Votre service ECS ou votre serveur EC2, ainsi que staging et production, doivent exister déjà. Je les connecte à GitHub. Si le côté AWS nécessite encore une mise en place, contactez-moi et je vous établirai un devis séparément de ce gig.
Quelles stacks et quels outils couvrez-vous ?
Applications Node.js et Next.js disposant d’un Dockerfile, déployées sur ECS ou EC2 sur AWS depuis GitHub Actions. Jenkins, GitLab CI, Kubernetes et EKS ne font pas partie de ce gig. Contactez-moi si votre stack diffère et je le préciserai.
Combien de temps cela prend-il?
Staging Auto Deploy prend 3 jours, Safe Production Release 5 jours, Full Team Handover 7 jours. Le démarrage se fait dès que j’ai accès au dépôt et à AWS, envoyez-les donc rapidement. Un accès lent de votre côté peut décaler la date.
Que se passe-t-il si une release se passe mal ?
Rollback en un clic dans GitHub. Il redéploye l’étiquette de l’image précédente, vous revenez à la dernière version fonctionnelle en quelques minutes. Je le lance une fois lors du handover pour que vous voyiez son fonctionnement sur votre service.
Qui peut approuver la production ?
Vous indiquez les utilisateurs GitHub. Seuls eux peuvent cliquer sur approuver, ainsi une fusion erronée n’atteint jamais la production. Certains plans GitHub limitent cette fonction sur les repos privés, je vérifie donc votre plan avant de commencer.
Mon équipe peut-elle publier sans moi ensuite ?
Oui. Quiconque a les droits de fusion met en staging en fusionnant. Vos approbateurs nommés publient la production en un clic. Le README explique le fonctionnement et comment ajouter un nouveau service au même pipeline plus tard.
Que faire si j'ai besoin de modifications après la livraison ?
Les révisions couvrent les corrections sur ce que j’ai bâti, donc tout ce qui ne se comporte pas comme décrit sera corrigé. Un nouveau service, un nouvel environnement ou un autre cloud constituent un nouveau périmètre. Ajoutez le service secondaire en option ou contactez-moi.
Pourquoi vous contacter avant de commander ?
Ainsi je peux lire votre Dockerfile et confirmer que ECS ou EC2 convient avant que vous payiez. Cela vous évite d’acheter un niveau qui ne correspond pas à votre configuration, et je vous dis d’emblée si votre code nécessite une modification avant, et non après.

