プログラミング寄稿

Dockerfile からビルド時にpip install に失敗する

ビルド時にpip install に失敗する

DockerfileにRUN pip install --no-cache-dir -r requirements.txt と記述し、buildした際、txtファイル内に記述したnumpy などのパッケージがNo matching distribution found for というエラーを吐いて失敗する。しかしながら、pip install を記述せずに先にビルドしてコンテナ起動後に、コンテナ内でpip install すると成功してしまう。

docker-compose.yml に記述を追加で解決

このエラーはDNS失敗に起因するものである。docker-compose.ymlにnetwork_modeをhostに指定する。ホストと同じ DNS / proxy を使えるのでDNS失敗を回避できる。

version: "3.9"

services:
  app:
    build:
      context: .
      network: host         # ←★ここ
    network_mode: host      # ←★ここ

みんなも楽しいdocker ライフを

コメント