Docker连接中的Pymodbus错误[Errno99]

Docker连接中的Pymodbus错误[Errno99],docker,dockerfile,pymodbus,Docker,Dockerfile,Pymodbus,我试图使Pymodbus示例在docker中工作,因此我为客户机构建了此dockerfile: FROM ubuntu RUN apt-get update -y RUN apt-get install -y python3.7 \ && apt-get install -y python3-pymodbus ADD synchronous_client.py sincclient.py 其中synchronous_client.py是Pymodbus给出的值。 我对

我试图使Pymodbus示例在docker中工作,因此我为客户机构建了此dockerfile:

FROM ubuntu

RUN  apt-get update -y

RUN apt-get install -y python3.7 \
 && apt-get install -y python3-pymodbus

ADD synchronous_client.py sincclient.py
其中synchronous_client.py是Pymodbus给出的值。 我对同步服务器也有同样的要求

我还没有使用DockerCompose,所以我只使用了两个不同的命令提示。服务器显然已打开,但当我尝试在docker客户端映像上运行客户端时,我得到以下结果:

> root@2697b6089821:/# python3 sincclient.py 2020-06-04 12:36:48,674
> MainThread      ERROR    sync           :206      Connection to
> (localhost, 5020) failed: [Errno 99] Cannot assign requested address
> 2020-06-04 12:36:48,674 MainThread      DEBUG    sincclient     :85   
> Reading Coils 2020-06-04 12:36:48,674 MainThread      ERROR    sync   
> :206      Connection to (localhost, 5020) failed: [Errno 99] Cannot
> assign requested address Traceback (most recent call last):   File
> "sincclient.py", line 166, in <module>
>     run_sync_client()   File "sincclient.py", line 86, in run_sync_client
>     rr = client.read_coils(1, 1, unit=UNIT)   File "/usr/lib/python3/dist-packages/pymodbus/client/common.py", line 48,
> in read_coils
>     return self.execute(request)   File "/usr/lib/python3/dist-packages/pymodbus/client/sync.py", line 107, in
> execute
>     raise ConnectionException("Failed to connect[%s]" % (self.__str__())) pymodbus.exceptions.ConnectionException: Modbus
> Error: [Connection] Failed to connect[ModbusTcpClient(localhost:5020)]
> root@2697b6089821:/# python3 sincclient.py 2020-06-04 12:51:18,283
> MainThread      ERROR    sync           :206      Connection to
> (localhost, 5020) failed: [Errno 99] Cannot assign requested address
> 2020-06-04 12:51:18,284 MainThread      DEBUG    sincclient     :85   
> Reading Coils 2020-06-04 12:51:18,284 MainThread      ERROR    sync   
> :206      Connection to (localhost, 5020) failed: [Errno 99] Cannot
> assign requested address Traceback (most recent call last):   File
> "sincclient.py", line 166, in <module>
>     run_sync_client()   File "sincclient.py", line 86, in run_sync_client
>     rr = client.read_coils(1, 1, unit=UNIT)   File "/usr/lib/python3/dist-packages/pymodbus/client/common.py", line 48,
> in read_coils
>     return self.execute(request)   File "/usr/lib/python3/dist-packages/pymodbus/client/sync.py", line 107, in
> execute
>     raise ConnectionException("Failed to connect[%s]" % (self.__str__())) pymodbus.exceptions.ConnectionException: Modbus
> Error: [Connection] Failed to connect[ModbusTcpClient(localhost:5020)]
>root@2697b6089821:/#python3 sincclient.py 2020-06-04 12:36:48674
>主线程错误同步:206连接到
>(localhost,5020)失败:[Errno 99]无法分配请求的地址
>2020-06-04 12:36:48674主线程调试sincclient:85
>读取线圈2020-06-04 12:36:48674主线程错误同步
>:206连接到(本地主机,5020)失败:[Errno 99]无法
>分配请求的地址回溯(最近一次呼叫最后一次):文件
>“sincclient.py”,第166行
>在run_sync_client中的第86行运行_sync_client()文件“sincclient.py”
>rr=client.read_线圈(1,1,unit=unit)文件“/usr/lib/python3/dist packages/pymodbus/client/common.py”,第48行,
>在读线圈中
>返回self.execute(request)文件“/usr/lib/python3/dist packages/pymodbus/client/sync.py”,第107行,在
>执行
>引发ConnectionException(“未能连接[%s]”%(self.\uu str\uu())pymodbus.exceptions.ConnectionException:Modbus
>错误:[连接]无法连接[ModbusTcpClient(本地主机:5020)]
> root@2697b6089821:/#python3 sincclient.py 2020-06-04 12:51:18283
>主线程错误同步:206连接到
>(localhost,5020)失败:[Errno 99]无法分配请求的地址
>2020-06-04 12:51:18284主线程调试客户端:85
>读取线圈2020-06-04 12:51:18284主线程错误同步
>:206连接到(本地主机,5020)失败:[Errno 99]无法
>分配请求的地址回溯(最近一次呼叫最后一次):文件
>“sincclient.py”,第166行
>在run_sync_client中的第86行运行_sync_client()文件“sincclient.py”
>rr=client.read_线圈(1,1,unit=unit)文件“/usr/lib/python3/dist packages/pymodbus/client/common.py”,第48行,
>在读线圈中
>返回self.execute(request)文件“/usr/lib/python3/dist packages/pymodbus/client/sync.py”,第107行,在
>执行
>引发ConnectionException(“未能连接[%s]”%(self.\uu str\uu())pymodbus.exceptions.ConnectionException:Modbus
>错误:[连接]无法连接[ModbusTcpClient(本地主机:5020)]
我是新手,所以我不清楚该怎么做,但我认为这可能与docker的网络模式有关