在 python-zmq 中定义套接字类型时出现操作不允许错误

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

尝试定义套接字类型时出现以下错误(“不允许操作”)。

root@44e95193982d:/# python3
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import zmq
>>> zmq.__version__
'24.0.1'
>>> context = zmq.Context()
>>> socket = context.socket(zmq.SUB)
Operation not permitted (src/thread.cpp:269)
Aborted (core dumped)

因为我以

root
方式运行所有内容,所以我不应该出现
Operation not permitted
错误。

奇怪的是,我在容器内运行此代码,并且根据主机的不同,它可能会或可能不会崩溃。此外,在同一台有问题的主机上,另一个容器中的 zmq 版本明显较旧(版本 16.0.2)可以正常工作。

由于错误消息不是很具有描述性,我什至不知道如何开始调试。

python docker zeromq
1个回答
0
投票

因此,主机中使用的 docker 版本存在问题,与某些基础镜像的 python 线程不兼容。使用

FROM debian:buster-slim
作为基础图像是一种解决方法。

我仍然不知道这个问题的根本原因和正确的解决方案。

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