From 4f139ba2a4306f1a931d6bb558265632ffa6a058 Mon Sep 17 00:00:00 2001 From: jvk Date: Thu, 28 Mar 2024 17:44:13 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20la=20documentation=20relative=20?= =?UTF-8?q?=C3=A0=20la=20github=20action=20permettant=20de=20publier=20l'i?= =?UTF-8?q?mage=20docker=20sur=20docker=20hub?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...hub-action.docker-publish.yml.explained.md | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 docs/github.github-action.docker-publish.yml.explained.md diff --git a/docs/github.github-action.docker-publish.yml.explained.md b/docs/github.github-action.docker-publish.yml.explained.md new file mode 100644 index 0000000..4bb0bb7 --- /dev/null +++ b/docs/github.github-action.docker-publish.yml.explained.md @@ -0,0 +1,62 @@ +Bien sûr, permettez-moi d'expliquer pas à pas ce fichier de workflow GitHub Actions pour publier une image Docker sur Docker Hub. + +```yaml +name: Publish Docker image +``` +Cette ligne définit le nom du workflow, qui apparaîtra sur GitHub. + +```yaml +on: + push: + branches: + - docker-compose-support +``` +Ici, nous spécifions l'événement déclencheur du workflow. Dans ce cas, il sera déclenché à chaque "push" (envoi de code) sur la branche `docker-compose-support`. + +```yaml +jobs: + build-and-push: + runs-on: ubuntu-latest +``` +Cette section définit un job nommé "build-and-push" qui s'exécutera sur la dernière version d'Ubuntu. + +```yaml + steps: +``` +Les étapes suivantes constituent les actions à exécuter dans le job. + +```yaml + - name: Checkout code + uses: actions/checkout@v3 +``` +Cette étape utilise l'action officielle "checkout" pour récupérer le code source du dépôt. + +```yaml + - name: Log in to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} +``` +Cette étape utilise l'action "login" pour se connecter à Docker Hub avec les identifiants stockés dans les secrets GitHub (`DOCKERHUB_USERNAME` et `DOCKERHUB_TOKEN`). + +```yaml + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 +``` +Cette étape configure Docker Buildx, un outil pour construire des images Docker de manière efficace. + +```yaml + - name: Build and push + uses: docker/build-push-action@v3 + with: + context: . + file: ./Dockerfile + push: true + tags: jeromev34/corbeaudocker:latest +``` +Cette étape construit l'image Docker en utilisant le `Dockerfile` dans le répertoire courant (`context: .`), puis la pousse (push) sur Docker Hub avec le tag `jeromev34/corbeaudocker:latest`. + +Ainsi, à chaque commit sur la branche `docker-compose-support`, ce workflow GitHub Actions sera déclenché. Il construira alors une nouvelle image Docker à partir du `Dockerfile`, se connectera à Docker Hub, et publiera cette image avec le tag `jeromev34/corbeaudocker:latest`. + +Vous pouvez adapter le nom d'utilisateur, le dépôt et le tag de l'image selon vos besoins. N'oubliez pas de stocker vos identifiants Docker Hub en tant que secrets GitHub pour une utilisation sécurisée. \ No newline at end of file