4
我有一個應用在端口8080的本地主機上運行。我有一些使用該服務的python代碼。該代碼在我的基本系統上運行良好,但只要我把它放在碼頭集裝箱內,我就可以得到urllib2.URLError: <urlopen error [Errno 111] Connection refused>
。我有另一個應用程序在端口6543公開api。同樣的問題。從Docker容器內部向本地主機發出請求
我假設我需要告訴碼頭允許它使用某些本地主機端口。我怎麼做?
這裏有一些更具體的細節:
我可以執行這行代碼就好了我的基本系統:
urllib2.urlopen(req, json.dumps(dData))
但是當我嘗試從一個碼頭工人容器內,然後做我得到:
File "/usr/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py", line 431, in open
response = self._open(req, data)
File "/usr/lib/python2.7/urllib2.py", line 449, in _open
'_open', req)
File "/usr/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 1227, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "/usr/lib/python2.7/urllib2.py", line 1197, in do_open
raise URLError(err)
urllib2.URLError: <urlopen error [Errno 111] Connection refused>
我已經嘗試添加權限docker.sock
ls -l /var/run/docker.sock
=> srw-rw-rwx 1 root docker 0 Feb 17 11:09 /var/run/docker.sock
http://stackoverflow.com/a/24326540/4720042選中此 –