sksat/containers

debian のバージョン振るやつをいいかんじに標準的に使いたい

Closed this issue · 7 comments

sksat commented

matrix:
base_tag: [bookworm, bookworm-slim, bullseye, bullseye-slim, buster, buster-slim, experimental, stable, stable-slim, testing, testing-slim, unstable, unstable-slim]

sksat commented

まずこの一覧は json とかに焼かれててほしいかも

sksat commented

たぶんバージョンによって稀にビルドがコケるやつが発生しうるんだよな(パッケージの都合によって)

sksat commented

あと,ベースイメージの振り方にも

  • ARG で頑張る(いまこれ)
  • ファイルを分ける
    • Dockerfile.bullseye など
    • ディレクトリを切る(debian/Dockerfile
  • buildx bake
  • Earthly

などがある

sksat commented

基本的な気持ちとしては

  • ファイルは共通化したい(メンテがダルいので)
    • ただし,テンプレートエンジンみたいなのを使って共通化する手もある(ex: rust-lang/rust-docker)
  • ARG で頑張るのは辛い
    • シンプルに辛いが,一方でやりたいことはこれではある
    • 一方で,ARG を振る部分の設定・実装が CI 側に寄る
  • buildx bake は結局 Dockerfile(と platform)まとめ君としてしか役に立たない
    • その割に強制的にファイル分割されて責務が曖昧になる(特にクロスビルドで)
sksat commented

debian のバージョンに関しては一部のパッケージだけが選択的に一部を drop できればよい

sksat commented

<build-tool>-debian-hoge-fuga なやつは debian バージョン振っていい,ぐらいのがシンプルか

sksat commented

debian に限らず YAML にタグ群を焼いて JSON に変換して撒くということになった