ডকার-কমপোজ: ডকার-কমপোজ.আইএমএল চালানোর পরে কন্টেইনারটি সরিয়ে অটোমেটিক্যালি করার বিকল্প


24

docker-compose runরেফারেন্স যে এটা আছে --rmকরার অপশন

রান করার পরে ধারক সরান।

আমি runউল্লেখ করেছি এমন কিছু পরিষেবার জন্য আমি এটি ডিফল্ট আচরণ করতে চাই docker-compose.yml

সুতরাং, প্রশ্নগুলি হ'ল :

  1. এটি কোনওভাবে নির্দিষ্ট করা যেতে পারে docker-compose.yml?
  2. যদি তা পারি তবে আমি কীভাবে এটি করতে পারি?

( আইএনবি 4 "ব্যাশের উপাধিগুলি ব্যবহার করুন, লূক!" : অবশ্যই আমি এর বাইরে docker-compose.ymlকিছু বাশ ওরফে সেট করেই এর বাইরে প্রয়োগ করতে alias docker-compose-run='docker-compose run --rm'পারি তবে আমি আগ্রহী যে কীভাবে আমি docker-compose.ymlবাহ্যিক উপায়ে নয়, এর মাধ্যমে কীভাবে কার্যকর করতে পারি ))

উত্তর:


10

টিএলডিআর: এটি এখনও সম্ভব নয় 2018-11 ; ব্যবহার docker-compose downবাdocker-compose run --rm

আমি এই প্রশ্নের একটি আপডেট উত্তর দিতে চাই কারণ এটি প্রায় 3 বছর পরে। এটি অন্যদের কিছু অনুসন্ধান সংরক্ষণ করবে।

আমার একই প্রশ্ন ছিল এবং আমি যে কার্যকারিতা পেয়েছি সেগুলি এখানে রয়েছে (নিজেই প্রশ্নটি থেকেই):

docker-compose down

যা নিম্নলিখিতগুলি করে:

পাত্রে স্টপ এবং আপ দ্বারা নির্মিত পাত্রে, নেটওয়ার্কগুলি, ভলিউমগুলি এবং চিত্রগুলি সরিয়ে দেয়।

ডিফল্টরূপে, শুধুমাত্র সরানো জিনিসগুলি হ'ল:

- Containers for services defined in the Compose file
- Networks defined in the networks section of the Compose file
- The default network, if one is used

বাহ্যিক হিসাবে সংজ্ঞায়িত নেটওয়ার্ক এবং ভলিউম কখনই সরানো হয় না।

যদিও আপনি docker-compose.ymlএটি এটি ঘোষণা করতে পারবেন না আপনাকে কিছু ঝামেলা নিরাপদ করবে; বিশেষত ভলিউম এবং নেটওয়ার্কগুলির সাথে।

docker-compose run --rm

--rm - রান করার পরে ধারক সরান। বিচ্ছিন্ন মোডে উপেক্ষিত।

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

docker-compose run web bash

[...] রান দ্বারা পাস করা কমান্ড পরিষেবা কনফিগারেশনে সংজ্ঞায়িত কমান্ডকে ওভাররাইড করে

[...] কমান্ড সার্ভিস কনফিগারেশনে উল্লিখিত কোনও পোর্ট তৈরি করে না । এটি ইতিমধ্যে খোলা পোর্টগুলির সাথে বন্দরের সংঘর্ষকে বাধা দেয়। আপনি যদি চান যে পরিষেবাটির বন্দরগুলি হোস্টের কাছে তৈরি করা এবং ম্যাপ করা যায়, - সার্ভিস -পোর্টস পতাকাটি নির্দিষ্ট করুন

docker-compose rm -f

-f, - বল অপসারণ নিশ্চিত করতে জিজ্ঞাসা করবেন না


8

এটি Dockerfileবা docker-compose.ymlঅনুমানের অংশ নয় , এটি রান কমান্ডের জন্য কেবল একটি ক্লাইপ বিকল্প, সুতরাং উত্তরটি হ'ল না। প্রয়োগের জন্য আপনাকে বাহ্যিক কিছুতে নির্ভর করতে হবে।

আপনি যদি আপনার প্রকল্পের জন্য কোনও বিল্ড টুল পেয়ে থাকেন তবে সাধারণত এটির সাথে ডকার-রচনা কার্যগুলি মোড়ানো ভাল। উদাহরণস্বরূপ আমাদের গ্রেড প্রকল্পগুলি ডকার সম্পর্কিত কাজগুলি সরবরাহ করে যা চাল কার্যগুলির --rmজন্য কিছু ডিফল্ট বিকল্প সেট করে ।

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