🤮

python:3.11-slim のイメージで作っていた Docker image が pip install でコケるようになった

に公開

執筆日

2025/04/09

概要

今朝までdocker compose buildで問題なくビルドできていたアプリが突然pip installのエラーでbuild出来なくなりました。requirements.txtを書き換えはなく、依存でインストールされているライブラリのバージョンも変わっていませんでした。

エラー
x python setup.py bdist_wheel did not run successfully.
~~
error : invalid command 'bdist_wheel'

原因

調べていたところ、python公式のDockerfileが本日更新されているのがわかりました。
https://github.com/docker-library/python
https://hub.docker.com/_/python/
確認すると、問題なく動作しているDockerコンテナはpython3.11.11で動いていたのですが、最新のpython:3.11-slimイメージではpython3.11.12がインストールされるようです。

解決

FROMで持ってくるイメージをマイナーバージョン指定から、パッチバージョン指定までガッチリ固めました。

- FROM python:3.11-slim
+ FROM python:3.11.11-slim

感想

pip freezeやらrequirements.txtやらのバージョン指定だけで解決できない場合もあるんですね……。
同じくDockerfileに書きがちなpip install -U pipも同じような落とし穴があるかもしれないので気を付けたいです。

ヘッドウォータース

Discussion