私はpythonアプリをドッキングします。Dockerハブに行ったところ、さまざまなサウンドのベースイメージがあることがわかりました。
3.7.0-stretch, 3.7-stretch, 3-stretch, stretch (3.7/stretch/Dockerfile)
3.7.0-slim-stretch, 3.7-slim-stretch, 3-slim-stretch, slim-stretch, 3.7.0-slim, 3.7-slim, 3-slim, slim (3.7/stretch/slim/Dockerfile)
3.7.0-Alpine3.8, 3.7-Alpine3.8, 3-Alpine3.8, Alpine3.8, 3.7.0-Alpine, 3.7-Alpine, 3-Alpine, Alpine (3.7/Alpine3.8/Dockerfile)
3.7.0-Alpine3.7, 3.7-Alpine3.7, 3-Alpine3.7, Alpine3.7 (3.7/Alpine3.7/Dockerfile)
Google検索を試みたにもかかわらず、「ストレッチ」、「スリム」、「スリムストレッチ」、およびアルパインの違いを理解できませんでした。助けて?
Dockerfilesを含むGithubリポジトリがここにありますが、非常に動的であり、簡単に読み取ることができません。
https://github.com/docker-library/python
Readmeもここにあります。
https://github.com/docker-library/docs/tree/master/python
stretch
に関する情報が本当にないようです。誤って削除してしまった場合、gitのリビジョン履歴でも見つかりませんでした。
問題を作成しました: https://github.com/docker-library/python/issues/34
StretchはDebian 9のコードネームです-現在安定版(2019-07-06まで、Debian 10のときバスターがリリースされました)。 「旧安定版」Debian 8のコードネームはJessieです。
https://wiki.debian.org/DebianReleases
私の個人的な推奨事項は、最小限のAlpineイメージを使用し、何かが機能しない場合はDebianイメージにフォールバックすることです:)
DebianとAlpineの比較(可能であればDockerの観点から):
私の限られた経験から、最も顕著な違いはapt
とapk
とGNU libc6とmusl libcです。そしてAlpineは busybox を使用します=多くのシステムコマンドの完全版ではなく。
更新:多くのPythonコンパイル済みバイナリコードのホイールはDebianベースのイメージで動作しますが、再コンパイルする必要があります(pip install
)アルパインベースの画像の場合。これらの場合、私はDebianベースのイメージを使用することを推奨します。