📝
Dockerイメージの uv not found エラー
uv not found
先日リリースされた uv 0.5.0 には破壊的な変更が含まれており,その一つが uv インストーラーの実行ファイル保存ディレクトリの変更です.従来の ~/.cargo/bin
から ~/.local/bin
に変更されました (uv リリースノート).
この変更により,Dockerfile
でインストーラーを使ってバージョンを指定せずに uv をインストールしている場合,ビルド時に Command 'uv' not found
エラーが発生し,ビルドが失敗するようになりました.
問題となる Dockerfile
の例:
RUN sh /uv-installer.sh && rm /uv-installer.sh
# Ensure the installed binary is on the `PATH`
ENV PATH="/root/.cargo/bin/:$PATH"
バージョンの明示を怠った罰ですね...
解決策
解決策はいくつかあります.単にパスを変更するのも良いですが,公式イメージから実行ファイルをコピーするように変更するのが最もシンプルです.バージョンの明示を忘れないようにしましょう.
COPY /uv /uvx /bin/
Discussion