docker-composeのbuild時、Dockerfile内のpip installでNewConnectionError Failed to establish a new connectionが発生した時の対処法
この記事では、docker-composeのbuild時、Dockerfile内のpip installでNewConnectionError Failed to establish a new connectionが発生した時の対処法方法を説明します。
この記事では、docker-composeのbuild時、Dockerfile内のpip installでNewConnectionError Failed to establish a new connectionが発生した時の対処法方法を説明します。
この記事の内容です。
対象読者
- Dockerコンテナ内でpip installを実行したい方
環境
- Docker
- docker-compose
前提条件
docker-compose使用
NewConnectionErrorの対処法
docker-compose build時に
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f8275464590>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/django/
が発生した場合は、docker-compose.yml内のpip installを行っているコンテナ部分、buildセクションを以下の通り書き換える。
書き換え前
# 省略
services:
web:
container_name: python-app-container
build: .
# 省略
書き換え後
# 省略
services:
web:
container_name: python-app-container
build:
context: .
network: host
# 省略
本記事のエラーは、コンテナがネットワークに接続できないのが原因で発生している。
なので、コンテナのネットワークをホストのものを使用するように指定することでネットワークに接続できるようにしている。
参考にしたページ
stackoverflow.com