ModuleNotFoundError:没有名为“urllib3.packages.six”的模块

问题描述 投票:0回答:3

我无法运行我的气流图像。它构建成功,但是当我使用 docker-compose up 并调出图像时,它会抛出以下错误并退出。

Unable to load the config, contains a configuration error.
Traceback (most recent call last):
  File "/usr/lib64/python3.6/logging/config.py", line 390, in resolve
    found = getattr(found, frag)
AttributeError: module 'airflow.utils.log' has no attribute 'file_task_handler'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.6/logging/config.py", line 392, in resolve
    self.importer(used)
  File "/usr/local/lib/python3.6/site-packages/airflow/utils/log/file_task_handler.py", line 24, in <module>
    import requests
  File "/usr/lib/python3.6/site-packages/requests/__init__.py", line 43, in <module>
    import urllib3
  File "/usr/lib/python3.6/site-packages/urllib3/__init__.py", line 8, in <module>
    from .connectionpool import (
  File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 11, in <module>
    from .exceptions import (
  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'

当然,我用谷歌搜索了一下,没有找到任何解决办法。我尝试使用我的 dockerfile 修复任何可能的错误,重新启动 docker,重建映像。

这是我的 dockerfile 的一部分。

RUN pip3 install  pytz --cert root.pem \
    && pip3 install pyOpenSSL --cert root.pem \
    && pip3 install ndg-httpsclient --cert root.pem \
    && pip3 install pyasn1 --cert root.pem \
    && pip3 install teradatasql --cert root.pem \
    && pip3 install --trusted-host=files.pythonhosted.org  --trusted-host=pypi.org apache-airflow[crypto,celery,postgres,hive,jdbc,kubernetes,mysql,mssql,ssh,ldap]==${AIRFLOW_VERSION} --cert root.pem \
    && pip3 install 'redis==3.2' --cert root.pem \
    && pip3 install Cython --cert root.pem \
    && pip3 install xmlrunner --cert root.pem \
    && pip3 install unittest-xml-reporting --cert root.pem \
    && pip3 install pyodbc --cert root.pem \
    && pip3 install flask-bcrypt --cert root.pem \
    && pip3 install python-ldap --cert root.pem \
    && pip3 install ldap3 --cert root.pem \
    && pip3 install emoji --cert root.pem \
    && pip3 install urllib3 --cert root.pem 
docker
3个回答
1
投票

将这些行添加到我的 dockerfile 中以解决问题

    && pip3 uninstall urllib3 -y --cert root.pem \
    && pip3 install --no-cache-dir -U urllib3 --cert root.pem

0
投票

1.24.1低版本,可以解决这个问题。 估计你的版本是1.26


0
投票

我的 docker 镜像遇到了这个问题,我所做的就是在 requeriments.txt 上升级这个软件包:

要求, 六, urllib3,

我没有指定版本,它工作得很好

© www.soinside.com 2019 - 2024. All rights reserved.