ডকার বিশ্বে বিচ্ছিন্ন মোডটি কী? আমি এই নিবন্ধটি লিঙ্কটি পড়েছি , তবে এটি বিচ্ছিন্ন মোডের অর্থ কী তা ঠিক ব্যাখ্যা করে না।
উত্তর:
আপনি একটি -dবিকল্প দিয়ে বিচ্ছিন্ন মোডে একটি ডকার ধারক শুরু করতে পারেন । সুতরাং ধারকটি শুরু হয়ে পটভূমিতে চলে run তার মানে, আপনি ধারকটি শুরু করেছিলেন এবং অন্যান্য কমান্ডগুলির জন্য প্রারম্ভের পরে কনসোলটি ব্যবহার করতে পারেন।
বিচ্ছিন্ন মোডের বিপরীতটি হল ফোরগ্রাউন্ড মোড। এটি ডিফল্ট মোড, যখন -dবিকল্প ব্যবহার করা হয় না। এই মোডে, আপনি যে কনসোলটি কার্যকর করতে ব্যবহার docker runকরছেন সেটি স্ট্যান্ডার্ড ইনপুট, আউটপুট এবং ত্রুটির সাথে সংযুক্ত থাকবে। তার মানে আপনার কনসোলটি ধারকটির প্রক্রিয়াতে সংযুক্ত।
বিচ্ছিন্ন মোডে, আপনি আপনার ডকারের ধারকটির সাথে স্ট্যান্ডার্ড আউটপুট অনুসরণ করতে পারেন docker logs -f <container_ID>।
উভয় বিকল্প চেষ্টা করুন। আমি আমার পাত্রে চালানোর জন্য সর্বদা বিচ্ছিন্ন মোডটি ব্যবহার করি। আমি আশা করি আমি এটি কিছুটা পরিষ্কার করে ব্যাখ্যা করতে পারলাম।
docker logs -f [container_ID] > logs.txt। নীচে @ বিমিচ দ্বারা প্রস্তাবিত ডকার পাত্রটি শুরু করার সময় এটি '-it' পতাকা যুক্ত করার চেষ্টা না করে যদি।
ডকার কমান্ড লাইনের বিচ্ছিন্ন বিকল্পটি ইঙ্গিত দেয় যে ডকার ক্লায়েন্ট ( docker) সার্ভারে অনুরোধ জানাবে ( dockerd) এবং তারপরে ক্লায়েন্টটি প্রস্থান করবে যখন অনুরোধটি সার্ভারে অবিরত থাকবে। বিভ্রান্তির অংশটি হতে পারে যে ডকারটি একক প্রক্রিয়ার মতো দেখায়, যেখানে বাস্তবে এটি ক্লায়েন্ট / সার্ভার অ্যাপ্লিকেশন যেখানে ক্লায়েন্টটি কেবলমাত্র একটি কমান্ডই একটি REST এপিআইতে সরু প্রতিটি কমান্ড প্রেরণ করতে পারে।
এর সাথে docker container run --detach, এর অর্থ এটি ধারকটি তৈরি করা হবে, সার্ভার সফল হলে একটি ধারক আইডি দিয়ে প্রতিক্রিয়া জানাবে এবং আপনি অন্য কমান্ডগুলি চালাতে মুক্ত থাকাকালীন কনটেইনারটি সার্ভারে চলতে থাকবে। এটি প্রায়শই কোনও সার্ভারের জন্য ব্যবহৃত হয় (যেমন এনজিনেক্স) আপনি অন্যান্য কমান্ডগুলি চালিয়ে যাওয়ার সময় পটভূমিতে শুরু করতে চান। মনে রাখবেন যে আপনি এখনও --interactiveএবং -ttyবিকল্পগুলি (প্রায়শই সংক্ষিপ্ত -it) দিয়ে একটি ধারক কনফিগার করতে পারেন এবং পরে docker container attachইতিমধ্যে চলমান ধারকটির সাথে সংযোগ রাখতে একটি চালনা করতে পারেন। (দ্রষ্টব্য, যতক্ষণ না আপনি চালিত কন্টেইনারে সংযুক্ত হন -itd, স্ট্যান্ডিনের কাছ থেকে পড়ার জন্য ধারকটির যে কোনও প্রয়াস স্তব্ধ হয়ে যাবে, ইনপুটটির শেষ না দেখে যা প্রায়শই সবে পাস করলে অবিলম্বে তাত্ক্ষণিক প্রস্থান করে -d))
আপনি যদি বিচ্ছিন্ন বিকল্পটি ছাড়া চালনা করেন তবে ধারকটি তৈরি হওয়ার পরে ক্লায়েন্টটি তত্ক্ষণাত্ একটি সংযুক্ত API কল চালাবে যাতে আপনি আউটপুটটি দেখতে পারেন এবং optionচ্ছিকভাবে ধারকটিতে চলমান প্রক্রিয়াতে ইনপুট সরবরাহ করতে পারেন। এটি কার্যকর যদি আপনার ধারকটি ইন্টারেক্টিভ কিছু চালাচ্ছে (উদাঃ /bin/bash)।
অন্যান্য বেশ কয়েকটি কমান্ড বিচ্ছিন্ন বিকল্পটিকে মঞ্জুরি দেয়, যার মধ্যে docker-compose up -dএকটি সম্পূর্ণ প্রকল্প শুরু হবে এবং এটি ব্যাকগ্রাউন্ডে সার্ভারে চলতে থাকবে। এছাড়াও অনেকগুলি docker serviceকমান্ড রয়েছে যা হয় কোনও সার্ভিসের লক্ষ্য স্থিতি তৈরি বা আপডেট করার জন্য সার্ভারে পরিবর্তন জমা দেওয়ার পরে আলাদা করে দেবে, বা আপনি যদি বিচ্ছেদ না করেন তবে ক্লায়েন্ট পরিষেবাটির বর্তমান অবস্থার সাথে লক্ষ্য স্থিতির সাথে মেলে না এবং অপেক্ষা করতে পারে স্থাপনার অগ্রগতি। docker serviceকমান্ডগুলি সহ নোট করুন , আপনাকে --detach=falseসংযুক্ত থাকতে থাকতে হতে পারে , আচরণটি আপনার সংস্করণের উপর নির্ভর করে গত বছরের তুলনায় পরিবর্তিত হয়েছে।
--detach-keys)
--interactiveএবং --tty(ওরফে -it) সাথে ধারকটির সাথে সংযুক্ত আছেন তা নিশ্চিত করুন ।
docker run -d -t ubuntu:14.04
ডকার রান - ডকার ইমেজ থেকে ডকারের ধারক হিসাবে একটি উদাহরণ তৈরি করুন। (যদি চিত্র স্থানীয়ভাবে উপলব্ধ না হয় তবে এটি ডকার হাব থেকে টানতে পারে) উবুন্টু - চিত্রের নাম
14.04 - ট্যাগ
-d, --detach - বিচ্ছিন্ন মোড
-t, --ত্তি - একটি সিডো-টিটিওয়াই বরাদ্দ করুন