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é.
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.