ডকার পাত্রে ওয়াইল্ড ফ্লাই শুরু হচ্ছে না


10

আমি উইন্ডোজ 10 প্রো-এর একটি ডকার ধারকটিতে চলমান ওয়াইল্ডফ্লাইয়ের স্বাগত পৃষ্ঠাটি অ্যাক্সেস করার চেষ্টা করছি। এটি আমিই করেছি:

ছবিটি টানুন:

docker pull jboss/wildfly

ওয়াইল্ডফ্লাই কনটেইনারটি চালান (এটি ভাল কাজ করে, ওয়াইল্ডফ্লাই লগে আমি দেখতে পারি এটি সঠিকভাবে শুরু হয়েছে):

docker run -it -p 8080:8080 jboss/wildfly

ধারক আইডি সন্ধান করুন:

docker ps

আইপি ঠিকানাটি পরীক্ষা করুন:

docker inspect -f "{{ .NetworkSettings.IPAddress }}" cac63ed21d78

আইপি ঠিকানাটি হ'ল 172.17.0.2, একটি ব্রাউজারে আমি http://172.17.0.2:8080/ এ যাই তবে ব্রাউজারটি স্তব্ধ হয়ে যায় এবং সময় শেষ হয়ে যায়। আমি কী মিস করছি?

হালনাগাদ

আমিও চেষ্টা করেছি 127.0.0.1:8080এবং এটিও কাজ করছে না

UPDATE2

কনসোল লগ:

docker --version

#Docker version 19.03.1, build 74b1e89e8a

docker run hello-world

#Hello from Docker!

docker run --detach --publish 8080:80 --name webserver nginx

#Unable to find image 'nginx:latest' locally
#latest: Pulling from library/nginx
#8ec398bc0356: Pull complete
#465560073b6f: Pull complete
#f473f9fd0a8c: Pull complete
#Digest:  sha256:b2d89d0a210398b4d1120b3e3a7672c16a4ba09c2c4a0395f18b9f7999b768f2
#Status: Downloaded newer image for nginx:latest
#c5cdb6de11240b5fe33bc424779721e1b44948797fd6ff389004d0766b71dd17

docker ps

#CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c5cdb6de1124 
#nginx "nginx -g 'daemon of" 10 minutes ago Up 10 minutes 0.0.0.0:8080->80/tcp webserver

উত্তর দেখার stackoverflow.com/a/43762751/7873775 এবং 10.0.75.1:8080 এবং 10.0.75.2:8080 চেষ্টা করুন।
ইভজিনি খাইস্ট

দুঃখিত, তবে এটি কার্যকর হয়নি। আমার কাছে ডকার এবং ব্রাউজার উভয়ই একই উইন্ডোজ 10 মেশিনে চলছে Iএই 10.0.75.xবাহ্যিক ঠিকানা না এবং ব্রাউজারটি ওয়েবে এটি আবিষ্কার করার চেষ্টা করে না?
PS0604

1
ঠিক আছে, আসুন সমস্যাটি খুঁজতে চেষ্টা করুন। দয়া করে নীচের সিএলআই কমান্ডগুলির ফলাফল পোস্ট করুন: ১ docker --version, ২ docker run hello-world, ৩. docker run --detach --publish 8080:80 --name webserver nginx, ৪. তারপরে লোকালহোস্ট
এভেজিনি খাইস্ট

কনসোল লগ সহ প্রশ্ন আপডেট হয়েছে দেখুন। আমি চেষ্টা করেছি localhost:8080এবং এটি বার বার। docker psশোCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c5cdb6de1124 nginx "nginx -g 'daemon of" 10 minutes ago Up 10 minutes 0.0.0.0:8080->80/tcp webserver
PS0604

@ অ্যাভেজিনি খাইস্ট আমি এই নিবন্ধটি পেয়েছি যা ডকার নেটওয়ার্কিং সম্পর্কে কথা বলে। এটি বলে যে ধারকটির অভ্যন্তরে চলমান সার্ভারটি সমস্ত ইন্টারফেস (নিবন্ধের শেষ অংশ) শুনতে হবে, এটি কি প্রয়োগ করে?
PS0604

উত্তর:


3

ডিফল্টরূপে, আপনি যখন একটি ধারক তৈরি করেন, এটি এর কোনও বন্দর বাইরের বিশ্বে প্রকাশ করে না। নেটওয়ার্ক 172.17.XX অভ্যন্তরীণ। আপনার যদি আইপি ঠিকানার সাথে -p পতাকা সহ আইপি রান ডকার ধারক হোস্ট করতে আবশ্যক:

-পি 8080: 8080

ডক হোস্টে 8080 পোর্ট করতে পাত্রে টিসিপি পোর্ট 8080 মানচিত্র করুন


বন্দরগুলি যদি বাইরের বিশ্বে প্রকাশ না করা হয় তবে এই উদাহরণটি কেন কাজ করবে?
PS0604

@ আপনি কীভাবে প্রতিক্রিয়াটি ভুলভাবে সম্পাদনা করেছেন, আপনি যদি প্রশ্নটি একবার দেখুন তবে এটি হ'ল আমি যা করছিলাম।
PS0604

@ PS0604 শোনায় মনে হচ্ছে কোনও নেটওয়ার্কে সমস্যা আছে। আপনার ক্ষেত্রে ফায়ারওয়াল বিধিগুলি পরীক্ষা করুন
ইভান ভভক

তাহলে আপনার উত্তরটি ভুল ছিল?
PS0604

আমার উত্তরটি সঠিক, কারণ এটি ডকুমেন্টেশনের পুনঃব্যবস্থার উপর ভিত্তি করে।
ইভান ভভক

3

থেকে: https://docs.docker.com/docker- for-windows/ নেটওয়ার্কিং /

পোর্ট ফরওয়ার্ডিং লোকালহোস্টের জন্য কাজ করে; - প্রকাশ, -পি, বা -পি সমস্ত কাজ। লিনাক্স থেকে উদ্ভাসিত পোর্টগুলি হোস্টে ফরোয়ার্ড করা হয়।

সুতরাং এটি http: // লোকালহোস্ট: 8080 থেকে অ্যাক্সেসযোগ্য হওয়া উচিত


যদি এটি কাজ না করে, তবে উইন্ডোজ উদাহরণটি ব্যবহার করে দেখুন

docker run -d -p 80:80 --name webserver nginx

যা অ্যাক্সেসযোগ্য http: // লোকালহোস্ট: 80 হওয়া উচিত

https://docs.docker.com/docker-for-windows/index#explore-the-application-and-run-examples


এমনকি যদি চেষ্টা করেও ব্যর্থ হয়:

docker-machine ip default

এবং ব্যবহার করুন http: // [ডকার-মেশিন-আইপি]: 80


1
এটি লোকালহোস্টে কাজ করে না: 8080, দুঃখিত
PS0604

আপনি উপরে পোস্ট করা উদাহরণটি চেষ্টা করে দেখতে পারেন যে এটি jboss / wildfly এর সমস্যা কিনা বা এটি আপনার উইন্ডোজ নেটওয়ার্কিং কিনা?
তেহাল

এবং যদি এনজিনেক্স কাজ না করে তবে আপনি 'ডকার-মেশিন আইপি ডিফল্ট' চালাতে পারেন এবং লোকালহোস্টের পরিবর্তে সেখানে আইপি ব্যবহারের চেষ্টা করতে পারেন
তিহল

0

মূল তথ্যটি হ'ল Docker container in Windows 10 Pro- এটি খুব সাধারণ স্পেসিফিকেশন যা উইন্ডোজে আপনার ডকার কীভাবে কাজ করে। অনেকগুলি বিকল্প যেমনDocker for Windows / দিয়ে ছাড়া Linux containers, Docker toolbox, দূরবর্তী উদাহরণস্বরূপ, ....

সাধারণত উইন্ডোজে ডকারের ধারকগুলি সাধারণত কোনও ধরণের ভার্চুয়াল মেশিনে চলছে (হাইপার-ভি, ভার্চুয়ালবক্স, ...)। সুতরাং অতিরিক্ত নেটওয়ার্ক স্তর রয়েছে যা আপনার উইন্ডোজ নেটওয়ার্কের নামস্থান থেকে সরাসরি অ্যাক্সেসযোগ্য নয়। তবে লিঙ্কযুক্ত উদাহরণটি লিনাক্স মেশিনে চলে, যেখানে এই অতিরিক্ত নেটওয়ার্ক স্তরটির অস্তিত্ব নেই। এবং এ কারণেই লিনাক্সের অনুলিপি উইন্ডোজে উদাহরণ দেয় না। সুতরাং যথারীতি ধারক চালান এবং পোর্টটি 8080 প্রকাশ করুন:

docker run -it -p 8080:8080 jboss/wildfly

তবে অ্যাক্সেসের জন্য আইপি আলাদা হবে এবং ধারক আইপি ব্যবহার করা যাবে না কারণ অভ্যন্তরীণ ডকার নেটওয়ার্কটি সম্ভবত উইন্ডোজ থেকে অ্যাক্সেসযোগ্য নয়। বরং আপনার উইন্ডোজ ওএসের আইপি ব্যবহার করার চেষ্টা করুন। শেষ পর্যন্ত ব্যবহৃত ডকুমেন্টেশন চেকDocker on Windows সমাধানের এবং এক্সপোজড পোর্টগুলির জন্য কোন আইপি ব্যবহৃত হয় তা সন্ধান করুন।

আপনার যদি অ্যাডভান্স উইন্ডোজ / লিনাক্স নেটওয়ার্কিং দক্ষতা থাকে তবে আপনি কোনওভাবে কনটেইনার নেটওয়ার্ক নেমস্পেস থেকে মধ্যবর্তী ভিএম নেটওয়ার্ক লেয়ারের মাধ্যমে উইন্ডোজ নেটওয়ার্ক স্তরটিতে পোর্ট / ফরোয়ার্ড করতে পারেন। তবে এটি বেশ জটিল হতে পারে।


জানু, আমি উইন্ডোজের জন্য ডকার ডেস্কটপ ইনস্টল করেছি , চিত্রটি ডাউনলোড করেছি এবং উপরের টিউটোরিয়ালে বর্ণিত ওয়াইল্ডফ্লাই ধারকটি চালাচ্ছি। কনসোলে আমি দেখতে পাচ্ছি যে এটি সূক্ষ্ম শুরু হয় 8080:8080এবং তত্ত্বের ক্ষেত্রে এটিই কাজ করা উচিত তবে এটি কার্যকর হয় না। আমি নেটওয়ার্কিং সম্পর্কে জানি না, আমি কোথায় সন্ধান করা উচিত?
PS0604

@ PS0604 আপনি যদি লিনাক্স টিউটোরিয়ালটি অন্ধভাবে অনুসরণ করতে চান তবে লিনাক্স ব্যবহার করুন। আমি যেমন উল্লেখ করেছি ডকটি হ'ল আপনার বন্ধু - ডকস.ডকার / ডকার- উইন্ডোজ / নেটওয়ার্কিং সেখানে স্পষ্টভাবে উল্লেখ করা হয়েছে There is no docker0 bridge on Windows: Because of the way networking is implemented in Docker Desktop for Windows, you cannot see a docker0 interface on the host. This interface is actually within the virtual machine.। দয়া করে এই সীমাবদ্ধতাটি মোকাবেলা করুন।
জান গারাজ

0

আমি উইন্ডোজ সিস্টেমে একই সাথে সমস্যার মুখোমুখি হয়েছিলেন pe তিনি এতে প্রচুর প্রচেষ্টা করেছিলেন এবং কোথাও পৌঁছাতে পারেন নি। উইন্ডোজের জন্য ডকার ডেস্কটপের সাথে এমন অনেক অদ্ভুত জিনিস রয়েছে যা মনে হয়। অবশেষে আমরা উইন্ডোজের জন্য লিনাক্স সাবসিস্টেমটি ইনস্টল করেছি এবং সেখানে ডকার ইনস্টল করেছি এবং তখন থেকে এটি তার জন্য মনোমুগ্ধকর কাজ করে। যদি আপনি উইন্ডোতে আটকে থাকতে চান এবং আপনি লিনাক্স সাবসিস্টেমটিতে কাজ করতে আপত্তি করেন না, তবে আমি আপনাকে সেই পথটিতে যেতে পরামর্শ দিই। জন গরাজের পরামর্শের চেয়ে আমরা আরও এগিয়ে গিয়েছি এবং এটি কেবল সময়ের অপচয় হিসাবে পাওয়া গেছে। উইন্ডোজের জন্য ডকার ডেস্কটপ বলতে বোঝানো হয় এমন একটি vv হিসাবে যেখানে আপনি সম্পূর্ণরূপে এটির মধ্যে কাজ করেন - ডেভ পাত্রে ব্যবহার ইত্যাদি Host হোস্ট-কনটেইনার স্টাফ এটির সাথে একটি ব্যথা।


হ্যাঁ, আমি একমত, আমি উইন্ডোজের পরিবর্তে উবুন্টুতে পাত্রে তৈরি করব, আমার কোনও সমস্যা নেই। একমাত্র বিষয় হ'ল আমি উইন্ডোজে বিকাশ করি, তাই আমাকে বিকাশকালে একবার উইন্ডোতে, তারপরে লিনাক্স ধারকটিতে এবং শেষ পর্যন্ত যখন আমি ধারকটি মেঘে আপলোড করি তখন তিনবার পরীক্ষা করতে হবে। যদি আমি উইন্ডোজটিতে ধারকটি চালাতে পারি তবে আমি কেবলমাত্র দু'বার পরীক্ষা করব।
PS0604

এই কারণেই আমি লিনাক্স সাবসিস্টেমটির পরামর্শ দিয়েছিলাম .. আপনাকে আসলে 3 বার প্রসঙ্গ পরিবর্তন করতে হবে না, হতে পারে 2-2.5 বার;)
স্যাম টমাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.