Python 神秘的AttributeError:“tuple”对象没有属性“setsockopt”错误消息

Python 神秘的AttributeError:“tuple”对象没有属性“setsockopt”错误消息,python,docker,nameko,Python,Docker,Nameko,我正在尝试部署一个停靠的python nameko应用程序 在我试图通过GET方法访问其中一个模块时,一切都按预期进行。在那里,我收到一个非常隐晦的错误: ... File "/usr/local/lib/python3.6/site-packages/eventlet/wsgi.py", line 347, in setup conn.setsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK, True) AttributeError: 'tupl

我正在尝试部署一个停靠的python nameko应用程序

在我试图通过GET方法访问其中一个模块时,一切都按预期进行。在那里,我收到一个非常隐晦的错误:

...
File "/usr/local/lib/python3.6/site-packages/eventlet/wsgi.py", line 347,
in setup conn.setsockopt(socket.IPPROTO_TCP, socket.TCP_QUICKACK, True)

AttributeError: 'tuple' object has no attribute 'setsockopt'
我知道我的代码不是问题所在,因为它已经在一台登台机器上启动并运行,至少没有类似的问题

我正在使用的Dockerfile看起来像这样,请注意

FROM python:3.5

EXPOSE 8000

CMD ["./run.sh"]

RUN adduser --uid 1000 --disabled-password --gecos '' --home /home/devuser devuser

WORKDIR /app

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    libxml2-dev \
    zlib1g-dev \
    libssl-dev \
    libxslt1-dev \
    netcat && \
    pip install --upgrade pip && \
    rm -rf /var/lib/apt/lists/* \
    rm -f /var/cache/apt/archives/*.deb

COPY requirements.txt /app/requirements.txt
RUN pip install --no-cache-dir -r /app/requirements.txt

COPY . /app

RUN chown devuser.devuser -R .
USER devuser
我没有做什么不同于我的登台机,所以我想知道…

这是一个症状,是由系统的变化引起的


解决方案是升级到nameko 2.8.3,它将要安装的eventlet版本锁定在0.16.1-0.22.0的范围内。

@snakecharmerb不在我的代码范围内…@snakecharmerb Spot on!!我将nameko版本更新到了2.8.3,它成功了。如果你能给我一个答案,我愿意接受