certbotエラー:No module named 'urllib3.packages.six'
certbotが下記エラーになったときの覚書。
File "/usr/lib/python3.6/site-packages/urllib3/exceptions.py", line 2, in <module>
from .packages.six.moves.http_client import (
ModuleNotFoundError: No module named 'urllib3.packages.six'
環境: CentOS Stream release 8, certbot 1.14.0, urllib3 1.24.2
urllib3でエラーになっている。
Google先生に聞くとurllib3とrequestsを強制的にアップグレードするコマンドを教えてくれる。
現在のpipモジュール一覧
# pip list
アップデート可能な一覧
# pip list -o
まずはpip自体を最新にする。
# pip install -U pip
urllib3をアップデート
# pip install -U urllib3
下記エラー
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
requests 2.20.0 requires urllib3<1.25,>=1.21.1, but you have urllib3 1.26.4 which is incompatible.
requests 2.20.0との相性がよくないらしい。
requestsを最新にする。
# pip install -U requests
setuptoolsのバージョンが低かったのが気になったので最新にする(今回のエラーとは関係ない)。
# pip install -U setuptools
certbot実行
# certbot certonly --webroot -w /home/httpd/hoge/wordpress/ -d hoge.com
無事完了。