web-dev-qa-db-fra.com

Comment mettre en cache docker-composez la construction à l'intérieur de github-action

Y a-t-il un moyen de cache docker-compose de manière à ne pas construire encore et encore? Voici mon fichier de workflow Action:

name: Github Action
on:
  Push:
    branches:
      - staging
jobs:
  test:
    runs-on: ubuntu-18.04

    steps:
      - uses: actions/checkout@v1

      - name: Bootstrap app on Ubuntu
        uses: actions/setup-node@v1
        with:
          node-version: '12'


      - name: Install global packages
        run: npm install -g yarn prisma


      - name: Install project deps
        if: steps.cache-yarn.outputs.cache-hit != 'true'
        run: yarn


      - name: Build docker-compose
        run: docker-compose -f docker-compose.test.prisma.yml up --build -d

Je veux mettre en cache l'étape de construction Docker. J'ai essayé d'utiliser if: steps.cache-docker.outputs.cache-hit != 'true' then only build mais n'a pas fonctionné.

6
Ashik

Pour ceux qui arrivent ici via Google, ceci maintenant "pris en charge". Ou au moins, cela fonctionne: https://github.community/t/use-Docker-layer-caching-with-docker-commose-build-not-just-docker/156049 . L'idée est de construire les images à l'aide de Docker (et de son cache), puis utilisez Docker composer pour exécuter (haut)-les.

0
Vaal