Configurer le CI/CD pour votre application PHP
Prérequis
Terminez toutes les sections précédentes de ce guide, en commençant par Conteneuriser une application PHP. Vous devez avoir un compte GitHub et un compte Docker pour terminer cette section.
Aperçu
Dans cette section, vous apprendrez à configurer et à utiliser GitHub Actions pour construire et tester votre image Docker, ainsi que pour la pousser sur Docker Hub. Vous effectuerez les étapes suivantes :
- Créer un nouveau dépôt sur GitHub.
- Définir le workflow GitHub Actions.
- Exécuter le workflow.
Étape un : Créer le dépôt
Créez un dépôt GitHub, configurez les informations d'identification de Docker Hub et poussez votre code source.
-
Créez un nouveau dépôt sur GitHub.
-
Ouvrez les Paramètres du dépôt, et allez à Secrets et variables > Actions.
-
Créez une nouvelle Variable de dépôt nommée
DOCKER_USERNAME
avec votre ID Docker comme valeur. -
Créez un nouveau Jeton d'accès personnel (PAT) pour Docker Hub. Vous pouvez nommer ce jeton
docker-tutorial
. Assurez-vous que les permissions d'accès incluent Lecture et Écriture. -
Ajoutez le PAT en tant que Secret de dépôt dans votre dépôt GitHub, avec le nom
DOCKERHUB_TOKEN
. -
Dans votre dépôt local sur votre machine, exécutez la commande suivante pour changer l'origine vers le dépôt que vous venez de créer. Assurez-vous de changer
votre-nom-d-utilisateur
par votre nom d'utilisateur GitHub etvotre-depot
par le nom du dépôt que vous avez créé.$ git remote set-url origin https://github.com/votre-nom-d-utilisateur/votre-depot.git
-
Dans votre dépôt local sur votre machine, exécutez la commande suivante pour renommer la branche en main.
$ git branch -M main
-
Exécutez les commandes suivantes pour mettre en attente, valider, puis pousser votre dépôt local sur GitHub.
$ git add -A $ git commit -m "mon premier commit" $ git push -u origin main
Étape deux : Configurer le workflow
Configurez votre workflow GitHub Actions pour construire, tester et pousser l'image sur Docker Hub.
-
Allez sur votre dépôt sur GitHub, puis sélectionnez l'onglet Actions.
-
Sélectionnez configurer un workflow vous-même.
Cela vous amène à une page pour créer un nouveau fichier de workflow GitHub Actions dans votre dépôt, sous
.github/workflows/main.yml
par défaut. -
Dans la fenêtre de l'éditeur, copiez et collez la configuration YAML suivante.
name: ci on: push: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Login to Docker Hub uses: docker/login-action@v3 with: username: ${{ vars.DOCKER_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and test uses: docker/build-push-action@v6 with: target: test load: true - name: Build and push uses: docker/build-push-action@v6 with: platforms: linux/amd64,linux/arm64 push: true target: final tags: ${{ vars.DOCKER_USERNAME }}/${{ github.event.repository.name }}:latest
Pour plus d'informations sur la syntaxe YAML pour
docker/build-push-action
, référez-vous au README de l'action GitHub.
Étape trois : Exécuter le workflow
Enregistrez le fichier de workflow et exécutez le travail.
-
Sélectionnez Valider les modifications... et poussez les modifications sur la branche
main
.Après avoir poussé le commit, le workflow démarre automatiquement.
-
Allez à l'onglet Actions. Il affiche le workflow.
La sélection du workflow vous montre la répartition de toutes les étapes.
-
Lorsque le workflow est terminé, allez à vos dépôts sur Docker Hub.
Si vous voyez le nouveau dépôt dans cette liste, cela signifie que GitHub Actions a bien poussé l'image sur Docker Hub.
Résumé
Dans cette section, vous avez appris à configurer un workflow GitHub Actions pour votre application.
Informations connexes :
- Introduction à GitHub Actions
- Actions GitHub de construction Docker
- Syntaxe du workflow pour GitHub Actions
Prochaines étapes
Ensuite, apprenez comment vous pouvez tester et déboguer localement vos charges de travail sur Kubernetes avant de les déployer.