build-push-actionを利用する。
注意点が2つ
- build-push-actionのloadをtrueにする
- docker-composeとactions側でイメージ名を合わせる(docker-composeのimageの値がbuild-push-actionのtagsに含まれていること)
workflows/xxx.yml
|
|
docker-compose.yml
|
|
参考
- https://github.com/docker/bake-action/pull/83/files
- https://stackoverflow.com/questions/61491484/how-to-cache-docker-compose-build-inside-github-action
- https://github.com/docker/bake-action/issues/81
- https://github.com/docker/build-push-action/issues/493
備忘録
buildxを利用していてtarget指定も使っているときは、workflows側もdocker-compose側もtarget指定が必要な模様(target指定を両方つけたときに動いた気がしたが問題を切り分けずに一気にやっていたので記憶が定かではない)
https://kotaroooo0-dev.hatenablog.com/entry/2020/08/06/012316 に
BuildKit を使ったビルドでは中間イメージが生成されません
とあるのでたぶんあっている。