ডকার টুলবক্স - লোকালহোস্ট কাজ করছে না


100

সুতরাং আমি ডকার টুলবক্সটি ব্যবহার করছি কারণ আমার মেশিনে হাইপার-ভি নেই কারণ এটি উইন্ডোজ 10 প্রো নয়। সবকিছু ঠিকঠাক কাজ করছে বলে মনে হয়, তবে আমি যখন আমার ব্রাউজারে যাওয়ার চেষ্টা করি তখন 0.0.0.0:80তা সর্বদা আমাকে ফিরিয়ে দেয়: এই সাইটে পৌঁছানো যায় না

তবে আমি যখন কমান্ডটি চালাচ্ছি: docker container psআমি নিম্নলিখিতগুলি পেয়েছি: এর 0.0.0.0:80->80/tcpঅর্থ এই ঠিকানাটি কাজ করা উচিত। আমি স্ট্যাকওভারফ্লো এবং গিথুব সমস্যাগুলি জুড়ে অনুসন্ধান করেছি। এখন আমি আটকে আছি।

আমি কিছু অনুপস্থিত করছি?

ধন্যবাদ, মার্ক

সম্পাদনা:

docker-machine ip defaultআমাকে ফেরত ব্যবহার করে 192.168.99.100। আমি এটি 80 পোর্টে চালিত করি still ঠিকানাটি ধারক আইডি হয়ে যায় তা বাদ দিয়ে আমি এখনও একই ফলাফল পেয়েছি:https://fd677edg12

আমি cmd কমান্ড উপর কমান্ড আমার IPv4 এটি সঞ্চালন করুন: cmd /k ipconfig /all। বন্দরটি দিয়ে ফলাফলটি রাখুন এবং এটি একই জিনিসটি দেয়:https://fd677edg12


4
০.০.০.০ একটি আসল ঠিকানা নয়, এর অর্থ হ'ল পোর্টটি ডকারের হোস্টের সমস্ত (আপনার উইন্ডোজ কম্পিউটার) ইন্টারফেসের সাথে আবদ্ধ ছিল। লোকালহোস্ট ব্যবহার করুন: 80 বা আপনার কম্পিউটারে যে কোনও আইপি ঠিকানা রয়েছে: 80
fvu

@fvu আমি এখনও "এই সাইটে পৌঁছানো যায় না" পেয়েছি। আমি চেষ্টাও করেছি docker-machine default ip -> 192.168.99.100তাই আমি ঠিকানায় 192.168.99.100:80রেখেছি : আমি এখনও একই ফলাফল পেয়েছি।
চিহ্নিত করুন

4
আপনি যদি পুনঃনির্দেশিত হন - এটি আপনার অ্যাপ্লিকেশনটি ভেঙে গেছে। ধরে
নিই ডক

উত্তর:


179

ডকার টুলবক্স উইন্ডোজের জন্য ডকারের মতো সুবিধাগুলি পায় না তবে আপনি হোম সংস্করণে থাকায় এটি ব্যবহার করা আপনি সঠিক।

টুলবক্সে, কিছুই ভার্চুয়ালবক্সে লিনাক্স ভিএম চালিত হওয়ায় এবং এটি ডিফল্টরূপে localhostহবে 192.168.99.100

সুতরাং যদি আপনি চালান docker run -p 80:80 nginx

(লক্ষ্য 192.168.99.100করুন যে বন্দরে শোনার জন্য আমাকে একটি বন্দর প্রকাশ করতে হয়েছিল)

তারপরে http://192.168.99.100কাজ করা উচিত।


উত্তরের জন্য ধন্যবাদ. আমি যুক্ত ছাড়া আপনার পদক্ষেপ অনুসরণ করছি docker run -p 80:80 -d nginx। আমি ঠিকানায় যাই এবং এটি আমাকে পুনর্নির্দেশ করে https://dev/, আবার এটি বলে যে সাইটটিতে পৌঁছানো যায় না। আমার কাছে hostsফাইলটি আছে কিনা তা যাচাই করতে চেয়েছি (যদিও আমি জানি এটি লোকাল হোস্ট নয়)। আমি সেখানে সবকিছু মন্তব্য।
চিহ্নিত করুন

বেশ কয়েকটি চেষ্টার পরে, অবশেষে এটি কাজ করেছিলাম। দুঃখের বিষয়, সমস্যাটি কী ছিল তা আমি খুব বেশি নিশ্চিত নই।
চিহ্নিত করুন

4
বোনাস তথ্য: ডকার টুলবক্স (উইন্ডোজ 7, ​​8, 8.1, এবং 10 হোম ব্যবহৃত) সত্যিই docker-machineক্লাইমের চারদিকে আবৃত একটি স্টার্টআপ স্ক্রিপ্ট । docker-machine --helpভার্চুয়ালবক্স ভিএম পরিচালনা করতে আপনি কী করতে পারেন তা দেখতে আপনি ব্যবহার করতে পারেন (বা আরও তৈরি করুন)।
ব্রেট ফিশার

64

ডকরটুলবক্স এবং ওরাকলভিএম ভার্চুয়ালবক্স ব্যবহার করার সময় আমার স্থানীয় অ্যাপ্লিকেশন অ্যাক্সেস নিয়ে প্রাথমিকভাবে কয়েকটি সমস্যা ছিল: 8080।

ভার্চুয়ালবক্সে:

  1. উপযুক্ত মেশিনটি ক্লিক করুন (সম্ভবত "লেবেলযুক্ত" ডিফল্ট ")
  2. সেটিংস
  3. নেটওয়ার্ক> অ্যাডাপ্টার 1> উন্নত> পোর্ট ফরওয়ার্ডিং
  4. একটি নতুন বিধি যুক্ত করতে "+" ক্লিক করুন
  5. হোস্ট পোর্ট 8080এবং গেস্ট পোর্ট সেট করুন 8080; হোস্ট আইপি এবং গেস্ট আইপি খালি রাখতে ভুলবেন না

কমান্ডটি চালান:

docker run -p 8080:8080 ${image_id}

রিমোট API এ CORS সেটআপের কারণে আমাকে লোকালহোস্ট: 8080 হিসাবে চালাতে হবে। এত দুর্দান্ত এটি এত সহজ, ধন্যবাদ!
ফাজেই

4
বিস্ময়কর। সর্বত্র বলা হচ্ছে এটি করা যায় না তবে এটি এখানে।
সুপারফ্রেশহ্যাকারকিড

এছাড়াও, নিশ্চিত হয়ে নিন যে আপনি ইতিমধ্যে এই বন্দরে অন্য জিনিস শোনার সাথে বা আপনার হোস্ট ফাইলে লোকালহোস্ট / 127.0.0.1 এন্ট্রিগুলিতে C:\Windows\System32\drivers\etc\hosts
গণ্ডগোল


43

আমি https://docs.docker.com/docker-for-windows/#set-up-tab-completion-in-powershell এ উইন্ডোজ টিউটোরিয়ালের জন্য ডকার অনুসরণ করছিলাম এবং ওয়েব ব্রাউজারে পরীক্ষার নাম্বার যখন 6 নম্বরে আটকে গেলাম । আমি উইন্ডোজ হোম ব্যবহার করি এবং হাইপার-ভি না থাকায় আমিও একই সমস্যার মুখোমুখি হই। আমার কাজের দিকটি বেশ সহজ:

  1. আপনার ডকার আইপি ডিফল্ট পরীক্ষা করুন

ock ডকার-মেশিন আইপি ডিফল্ট

192.168.99.100

  1. পোর্ট ফরওয়ার্ডিংয়ের জন্য সেট করতে ওরাকল ভার্চুয়াল মেশিনে যান। নিশ্চিত করুন যে নেটওয়ার্ক সেটিংস NAT, এবং পোর্ট ফরওয়ার্ডিং যুক্ত করুন। হোস্ট আইপি: 127.0.0.1, অতিথির আইপি: 192.168.99.100, পোর্ট সব সেট করুন 80 এর মতো

  2. আপনার ব্রাউজারে আবার চেষ্টা করুন এবং http: // লোকালহোস্ট বা http://127.0.0.1 চালান (পোর্ট ৮০ যোগ করতে পারেন)। এটি চালানো উচিত।

জিনিসটি হ'ল এনগিনেক্স আইপিটি ডকার ভার্চুয়াল মেশিনের মধ্যে অ্যাক্সেসযোগ্য হওয়ার জন্য বোঝানো হয়েছে, যাতে আমাদের হোস্ট মেশিনের ব্রাউজারে সরাসরি এটি অ্যাক্সেস করার জন্য সেই পোর্ট ফোরওয়েডিং সেটিংটি দরকার we


4
HOST:CONTAINERবন্দরগুলি পৃথক হলে আমার একটি কেস প্রয়োজন ছিল , যেমন docker run --detach --publish 8081:80 --name webserver nginx। পাওয়া গেছে যে HOSTএক্ষেত্রে আমাকে কেবল পোর্ট ফরওয়ার্ড করতে হয়েছে, ভার্চুয়ালবক্স সেটিংসে Host IP=127.0.0.1; Host Port=8081; Guest IP=192.168.99.100; আমার আগের মতো Guest Port=8081নয় 80সৌন্দর্য সামনে ধারক বন্দর থেকে Docker টুলবক্স Docker সঙ্গে আমার উইন্ডোজ 7 মেশিনে পছন্দ 80করতে 192.168.99:8081এবং থেকে আমি 192.168.99:8081করতে localhost:8081কারণ 192.168.99:8081ওয়েব-ব্রাউজারে কিছু দেখায় না।
1

13

আপনি localhostনির্দেশাবলী অনুসরণ করে '192.168.99.100' এর পরিবর্তে ব্যবহার করতে পারেন :

পদক্ষেপ # 01:

docker-machine ip default

আপনি ডিফল্ট আইপি দেখতে পাবেন

পদক্ষেপ # 02:

docker-machine stop default

পদক্ষেপ # 03:

  1. ভার্চুয়ালবক্স ম্যানেজার খুলুন (উইন্ডোজ অনুসন্ধানে প্রোগ্রামগুলি শুরু থেকে VirtualBox Manager)
  2. আপনার ডকার মেশিন ভার্চুয়ালবক্স চিত্র নির্বাচন করুন (যেমন: ডিফল্ট)
  3. সেটিংস খুলুন -> নেটওয়ার্ক -> উন্নত -> পোর্ট ফরওয়ার্ডিং
  4. আপনার অ্যাপের নাম, পছন্দসই হোস্ট পোর্ট এবং আপনার অতিথি বন্দর যুক্ত করুন i.e, app name : nginx, host: 127.0.0.1, host port: 80, guest port: 80

পদক্ষেপ # 04: এখন আপনি নিম্নলিখিতটি সম্পাদন করে আপনার ডকার মেশিন শুরু করতে প্রস্তুত:

docker-machine start default

তারপরে আপনার ডকারের ধারকটি কেবল শুরু করুন এবং আপনি লোকালহোস্টের মাধ্যমে এটি অ্যাক্সেস করতে সক্ষম হবেন।

বিশদ জন্য এখানে দেখুন।


2

localhostসরাসরি ডকার-মেশিন আইপি মারার পরিবর্তে প্রত্যাশিত পোর্টগুলি মানচিত্র করতে, আপনি ভার্চুয়ালবক্স সিএলআই ব্যবহার করতে পারেন।

যদি ডকার-মেশিন ভিএম (এখানে বলা হয় default) চলমান থাকে তবে এই জাতীয় নিয়ম যুক্ত করুন এবং মুছুন:

> VBoxManage.exe controlvm "default" natpf1 "nginx,tcp,,8888,,8888"
> VBoxManage.exe controlvm "default" natpf1 delete nginx

যদি ভিএম চালু না থাকে, বা আপনি এটি পরিবর্তন করার আগে থামাতে চান:

> docker-machine stop
> VBoxManage.exe modifyvm "default" --natpf1 "nginx,tcp,,8888,,8888"
> VBoxManage.exe modifyvm "default" --natpf1 delete "nginx"
> docker-machine start

যেখানে পোর্ট ফরওয়ার্ডিং নিয়মের ফর্ম্যাট [<name>],tcp|udp,[<hostip>],<hostport>,[<guestip>], <guestport>

নোট করুন যে ভার্চুয়ালবক্সে আপনি ডকার মানচিত্রের হোস্ট পোর্টে মানচিত্র করতে চান , অভ্যন্তরীণ ধারক পোর্ট নয়। আপনি হোস্ট ম্যাপিং করছেন -> ভিএম, তারপরে ডকার ভিএম -> ধারক মানচিত্র করে।

দেখুন VirtualBox ডক্স


1

আইপি 192.168.99.100 টাইপ করা এড়াতে এটি আর একটি সহজ উপায়। C:\Windows\System32\drivers\etc\hostsফাইলটির শেষে যান এবং যুক্ত করুন:

192.168.99.100 docker.awesome বা আপনার পছন্দ মত কোনও নাম।

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

আপনার নির্বাচিত ডোমেন নামটিতে যান, ডকার.উউয়াইভ: এই ক্ষেত্রে 8080 এবং আপনার এটি রয়েছে।


0

অনেক পরীক্ষার পরেও আমি এই বুলেটিন বোর্ডটি পেতে পেরেছি।

  1. আমি ব্যবহৃত ডকার রান কমান্ড - ডকার রান-পি 4680: 8080 - নাম বিবি বুলেটিনবোর্ড: 1.0 এখানে, 4680 লোকালহোস্ট পোর্ট নম্বর। 8080 হ'ল কনটেইনার পোর্ট নম্বর, যে পোর্টটিতে কনটেইনারটি শুনবে। এই পোর্ট নম্বরটি ডকফাইফিলের এক্সপোজ কমান্ডে উল্লেখ করা হয়েছে।

  2. তারপরে, ওয়েব ব্রাউজারে যান এবং 192.168.99.100:4680 টাইপ করুন

এখানে, 192.168.99.100 হ'ল ডকার মেশিনের আইপি ঠিকানা (কমান্ড -> ডকার-মেশিন আইপি ব্যবহার করুন)

  1. এর পরে, আপনার ব্রাউজার পৃষ্ঠাটি এতে খোলা উচিত -

এখানে চিত্র বর্ণনা লিখুন

এই আপনি সব সাহায্য করে আশা করি!!

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