2016-05-11 7 views
8

में दिखाई नहीं देते हैं मेरे पास डॉकर 1.7.0 के साथ RHEL 7 पर चलने वाला डॉकर कंटेनर है। प्रोग्राम है जो इस कंटेनर में चल बंदरगाह 5000 पर TCP कनेक्शन मेरी Dockerfile में लिए सुनता मैं वाक्य बेनकाब 5000 रख दिया और मैं निम्न आदेश के साथ कंटेनर चलाने: जब मैं मेजबान मैं पर netstat निष्पादितडॉकर का उपयोग करते समय, एस्टास्टिस्ड कनेक्शन netstat

docker run \ 
--name myProgram \ 
--detach \ 
--publish 5000:5000 \ 
--volume /home/docker/apps/myProgram/logs:/var/log/myProgram/ \ 
--volume /home/docker/apps/myProgram/conf:/usr/local/snnotificationreceiver/conf/ \ 
--restart always \ 
10.167.152.15:5000/myProgram:1.0.0 

देख सॉकेट सुनें:

[[email protected] bin]# netstat -naop | grep 5000 
tcp6  0  0 :::5000     :::*     LISTEN  33595/docker-proxy off (0.00/0/0) 

मैं पोर्ट 5000 और डेटा मैं आवेदन आता है करने के लिए भेजने पर मेजबान आईपी एड्रेस से जोड़ने आवेदन करने के लिए कनेक्ट कर सकते हैं। मुझे यह पता है क्योंकि मैं इसे अपने एप्लिकेशन लॉग पर देखता हूं, एप्लिकेशन भी सॉकेट के माध्यम से डेटा भेजता है।

[[email protected] ~]# netstat -naop | grep 5000 
tcp  0  0 10.167.43.73:39218  10.167.152.138:5000  ESTABLISHED 21429/telnet   off (0.00/0/0) 

मैंने नहीं किया:

[[email protected] bin]# netstat -naop | grep ESTABLISHED 

मैं ग्राहक के पक्ष जो डोकर उपयोग नहीं करता है पर स्थापित कनेक्शन देखें: हालांकि मैं डोकर मेजबान पर netstat उपयोग कर किसी भी कनेक्शन स्थापित होते नहीं दिख रहा है नेटस्टैट के बराबर या समान किसी भी डॉकर कमांड को ढूंढें क्या यह सामान्य है? मैं एक कंटेनर या डॉकर-प्रॉक्सी के लिए स्थापित कनेक्शन कैसे देख सकता हूं?

धन्यवाद

उत्तर

9

आप या तो कर सकते हैं:

docker exec <containerid> netstat -tan | grep ESTABLISHED 

या यदि आप अपने डोकर छवि में netstat की जरूरत नहीं है:

docker inspect -f '{{.State.Pid}}' <containerid> # note the PID 
sudo nsenter -t <pid> -n netstat | grep ESTABLISHED 

nsenter util-linux पैकेज का हिस्सा है। (चोरी @larsks)

+0

असल में यह एक कामकाजी समाधान है, लेकिन कमांड को 'sudo nsenter -t -n netstat जैसा दिखना चाहिए। grep स्थापित '। '-n' विकल्प पर ध्यान दें। अधिक जानकारी यहां http://stackoverflow.com/a/40352004/1201488 मिल सकती है। –

+0

हाँ इसके बारे में खेद है। यहां काम करने के लिए nsenter के लिए आवश्यक है। – AdvilUser

+0

मेरे लिए यह स्थानीयहोस्ट से आने वाले कनेक्शन दिखाता है, कनेक्शन के स्रोत पते के बारे में कोई संकेत नहीं। कोई जानता है कि उसे कैसे देखना है? – jjmontes

संबंधित मुद्दे