无法使用Docker COntainer将客户端连接到服务器

时间:2017-03-30 02:10:18

标签: python sockets networking docker python-sockets

python 服务器代码:

#!/usr/bin/python           
import socket               
s = socket.socket()         
host = socket.gethostname() 
port = 12345                
s.bind((host, port))        
s.listen(5)                 
while True:
   c, addr = s.accept()
   print 'Got connection from', addr
   c.send('Thank you for connecting')
   c.close()

Python 客户端代码

#!/usr/bin/python  
import socket               
s = socket.socket()         
host = socket.gethostname() 
port = 12345                
s.connect((host, port))
print s.recv(1024)
s.close    

Dockerfile:

FROM python:2-onbuild    
CMD ["python","./client.py"]

虽然他们正在成功构建图像,但会出现此错误errno111。 服务器开始运行,但客户端无法访问服务器。 错误如下。我不知道是否必须向dockerfile添加任何其他数据,或者我应该对执行docker容器的方式做任何事情。 Python客户端和服务器在Python IDLE中完美执行。

Traceback (most recent call last):
   File "./client.py", line 9, in <module>
       s.connect((host,port))
   File "usr/local/lib/python2.7/socket.py", line 228, in meth
       return getattr(self._sock, name)(*args)
socket.error: [Errno 111] Connection refused

0 个答案:

没有答案