misskey
misskey copied to clipboard
Dockerイメージのビルド時にキャッシュをガンガン活用する
Summary
ビルド時に毎回apt-getやpnpmがダウンロードするのは時間がかかるし、相手にも迷惑がかかる(要出典)ので
- Dockerfile内では
RUN --mount=type=cache
を使う - GHAでは
cache-from
とcache-to
を使う
キャッシュが効き過ぎるとapt-getは古いパッケージになってしまうかもしれないけど、そんなに弊害は無いはず
aptでの依存パッケージのセキュリティアップデートが来ないのはちょっと微妙
こちらですが、完成したDockerイメージのビルドサイズが大きくなるデメリットよりもパッケージのキャッシュを保持しておくことによるビルド時間短縮のメリットを取った、という理解で良いでしょうか?
Dockleのルール DKL-DI-0005
と相反する状態になっているため、https://github.com/misskey-dev/misskey/pull/9568 の実装にあたりこのルールをignoreするか判断する材料にしたいという意図です。