প্রশ্ন ডকার কন্টেইনারের মধ্যে নিরাপত্তা আপডেটগুলি কীভাবে পরিচালনা করবেন?


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

অপারেটিং সিস্টেমে প্যাকেজগুলির আপডেট হওয়া সংস্করণগুলি ইনস্টল করার জন্য প্যাকেজ ম্যানেজার কমান্ডটি কার্যকর করে প্রথাগতভাবে সুরক্ষা আপডেটগুলি প্রয়োগ করা হয়েছে (উদাহরণস্বরূপ, RHEL এ "yum update")। কিন্তু ডকারের মতো কন্টেইনার প্রযুক্তির আবির্ভাবের সাথে যেখানে ধারক চিত্রগুলি মূলত উভয় অ্যাপ্লিকেশনটিকে বান্ডিল করে এবং প্ল্যাটফর্ম, আপ টু ডেট কন্টেইনার সঙ্গে একটি সিস্টেম রাখার ক্যানোনিকাল উপায় কি? হোস্ট এবং কন্টেইনার উভয়ের নিজস্ব, স্বাধীন, প্যাকেজগুলির সেট যা হোস্টে আপডেট এবং আপডেট করার প্রয়োজন সেগুলি কন্টেইনারের ভিতরে কোনও প্যাকেজ আপডেট করবে না। RHEL 7 মুক্তির সাথে যেখানে ডকার কন্টেইনারগুলি বিশেষভাবে বৈশিষ্ট্যযুক্ত হয়, কন্টেনারগুলির নিরাপত্তা আপডেট পরিচালনা করার জন্য রেডহ্যাটের প্রস্তাবিত উপায়টি কী শুনতে পারা তা আকর্ষণীয়।

বিকল্প কয়েকটি চিন্তা:

  • হোস্টে প্যাকেজ ম্যানেজার আপডেট প্যাকেজগুলি লেট করার ফলে কনটেইনারগুলির ভিতরে প্যাকেজ আপডেট করা হবে না।
  • আপডেটগুলি প্রয়োগ করার জন্য সমস্ত ধারক চিত্রগুলি পুনরায় জেনারেট করার ফলে অ্যাপ্লিকেশন এবং প্ল্যাটফর্মের মধ্যে বিচ্ছিন্নতা দেখা দেয় (প্ল্যাটফর্ম আপডেট করার জন্য অ্যাপ্লিকেশন বিল্ড প্রক্রিয়া অ্যাক্সেসের প্রয়োজন যা ডকার চিত্রগুলি তৈরি করে)।
  • চলমান কন্টেইনারের ভিতরে ম্যানুয়াল কমান্ডগুলি চালানো জটিল বলে মনে হয় এবং পরবর্তী সময়ে কনটেইনারগুলি অ্যাপ্লিকেশন রিলিজের আর্টিফিক্টগুলি থেকে আপডেট হওয়া পরিবর্তনগুলির উপরে ওভাররাইট হওয়ার ঝুঁকি থাকে।

সুতরাং এই পদ্ধতির কেউ সন্তোষজনক মনে হয়।


103
2017-07-08 21:54


উত্স


আমি এই পর্যন্ত দেখা করেছি জন্য ভাল ধারণা প্রকল্প পারমাণবিক। আমি এটা মনে করি না পুরোপুরি যদিও প্রধান সময় জন্য প্রস্তুত। - Michael Hampton♦
ভ্যালকো, আপনি কি কর্মপ্রবাহ শেষ করেছেন? আমি দীর্ঘমেয়াদী পাত্রে চলছি (উদাহরণস্বরূপ, php-cgi হোস্টিং) এবং আমি যা পেয়েছি তা হল: docker pull debian/jessie ইমেজটি আপডেট করতে, তারপরে আমার বিদ্যমান চিত্র (গুলি) পুনঃনির্মাণ করুন, তারপর কন্টেনারগুলি বন্ধ করুন এবং আবার চালান (নতুন চিত্র সহ)। আমি যে ছবিগুলি তৈরি করেছি তার আগের নামগুলির মতো একই নাম রয়েছে, তাই শুরু স্ক্রিপ্টের মাধ্যমে করা হয়। আমি তারপর "নামহীন" ছবি মুছে ফেলুন। আমি অবশ্যই একটি ভাল workflow প্রশংসা হবে। - miha
miha: যে আমি শেষ পর্যন্ত কি অনুরূপ শোনাচ্ছে। মূলত ক্রমাগত আপডেট এবং নতুন রিলিজ তৈরি অংশ হিসাবে সব ছবি পুনর্নির্মাণ। এবং নতুন ইমেজ ব্যবহার করে কন্টেনার পুনরায় আরম্ভ করা। - Markus Hallmann
সেরা উত্তর এখানে অনেক সাহায্য করে কারণ একটি স্ক্রিপ্ট রয়েছে যা জোহানেস জিমকে ঠিক বলেছেন কি করতে প্রধান কমান্ডলাইনে রয়েছে: - Hudson Santos


উত্তর:


একটি ডকার ইমেজ bundles অ্যাপ্লিকেশন এবং "প্ল্যাটফর্ম", যে সঠিক। কিন্তু সাধারণত ইমেজ একটি বেস ইমেজ এবং প্রকৃত আবেদন গঠিত হয়।

তাই নিরাপত্তা আপডেটগুলি পরিচালনা করতে ক্যানোনিক্যাল পদ্ধতিটি বেস চিত্রটি আপডেট করা, তারপরে আপনার অ্যাপ্লিকেশন চিত্রটি পুনঃনির্মাণ করা।


43
2017-08-12 11:41



ধন্যবাদ, এই যুক্তিসঙ্গত শব্দ। এখনও প্ল্যাটফর্ম আপডেট করতে চান যাতে পুরো অ্যাপ্লিকেশনটি পুনরায় প্যাকেজিং ট্রিগার করতে না পারে (উদাহরণস্বরূপ, একটি বেস বেস চিত্র আপডেট হওয়ার কারণে 100 টি বিভিন্ন অ্যাপ্লিকেশন চিত্র পুনর্নির্মাণের কথা বিবেচনা করুন)। কিন্তু সম্ভবত এটি একটি একক চিত্রের ভিতরে সবকিছু একত্রিত করার ডকার দর্শনের সাথে অনিবার্য। - Markus Hallmann
@ ভলক সিপুলি আপনি সর্বদা প্রক্রিয়াটি স্বয়ংক্রিয়ভাবে করতে একটি স্ক্রিপ্ট লিখতে পারেন। - dsljanus
কেন অপ্ট আপ পেতে আপগ্রেড, dnf আপগ্রেড, pacman-syu, ইত্যাদি কনটেইনার ভিতরে সমান? এমনকি আপনি যে একটি শেল স্ক্রিপ্ট তৈরি করতে পারে এবং তারপর অ্যাপ্লিকেশনটি চালায়, তারপরে কন্টেইনারের এন্ট্রিপয়েন্ট হিসাবে ব্যবহার করুন যাতে কনটেইনারটি চালু / পুনঃসূচনা হয়ে গেলে এটি তার সমস্ত প্যাকেজগুলিকে আপগ্রেড করে। - Arthur Kay
@ আর্থুরকে দুটি কারণ: 1) আপনি ধারক আকারটি উড়িয়ে দিবেন, যেহেতু আপগ্রেড হওয়া সমস্ত প্যাকেজগুলি চিত্রের পুরানো প্যাকেজ রেখে কনটেইনার লেয়ারে যোগ করা হবে। 2) এটি (কন্টেইনার) ইমেজগুলির সবচেয়ে বড় সুবিধাটি হারাচ্ছে: আপনি যে চিত্রটি চালাচ্ছেন তা একই নয় যা আপনি নির্মাণ / পরীক্ষা করেন কারণ আপনি রানটাইমগুলিতে প্যাকেজ পরিবর্তন করেন। - Johannes 'fish' Ziemke
একটি জিনিস আমি বুঝতে পারছি না: যদি আপনি কোনও সফটওয়্যারের টুকরাটি কিনে থাকেন যা ডকার কন্টেইনার হিসাবে বিক্রী করা হয় তবে সুরক্ষা সংস্থার প্রতিটি সময় অ্যাপ্লিকেশন প্যাকেজটি পুনর্নির্মাণ করার জন্য আপনাকে সফটওয়্যার প্রস্তুতকারকের জন্য অপেক্ষা করতে হবে ? কোন সংস্থা তাদের খোলা দুর্বলতার উপর নিয়ন্ত্রণ ছেড়ে দেবে? - Sentenza


পাত্রে হালকা ও বিনিমেয় হতে অনুমিত হয়। আপনার কন্টেইনারের যদি কোনও সুরক্ষা সমস্যা থাকে তবে আপনি নতুন কন্টেইনারটি প্যাচযুক্ত এবং স্থাপন করে এমন কনটেইনারটির একটি সংস্করণ পুনর্নির্মাণ করেন। (অনেকগুলি কন্টেনার স্ট্যান্ডার্ড বেস ইমেজ ব্যবহার করে যা স্ট্যান্ডার্ড প্যাকেজ ম্যানেজমেন্ট সরঞ্জামগুলি ব্যবহার করে যেমন তাদের নির্ভরতাগুলি ইনস্টল করার জন্য apt-get ব্যবহার করে, পুনর্নির্মাণটি রিপোজিটরি থেকে আপডেটগুলি টেনে আনবে)

আপনি পাত্রে ভিতরে প্যাচ পারে, যে ভাল স্কেল যাচ্ছে না।


6
2017-10-03 19:44





এটি zypper-docker (1) ব্যবহার করে SUSE এন্টারপ্রাইজ লিনাক্সে স্বয়ংক্রিয়ভাবে পরিচালিত হয়

Suse / zypper-Docker

ডকার দ্রুত শুরু


1
2018-05-08 17:05





প্রথমত, আপনার অতীতের আপডেটগুলি যা আপনি অতীতে অতীতভাবে চালিত হবেন কেবলমাত্র কনটেইনারের অভ্যন্তরেই নয়। কন্টেইনারটি অতীতে দেখতে আপনার অভ্যস্ত পূর্ণ ফাইল সিস্টেমের মোটামুটি লাইটওয়েট এবং ছোট উপসেট হওয়া উচিত। প্যাকেজগুলি আপডেট করতে হবে আপনার ডকারফিলের অংশ যা আপনার ডকার ফাইন্যালের অংশ হিসাবে থাকবে এবং আপনার কাছে ডকারেরফিল থাকবে, তাই আপনি সেই প্যাকেজ এবং কন্টেইনার আইডিগুলির ট্র্যাক রাখতে সক্ষম হবেন যা আপডেটগুলির প্রয়োজন। ক্লাউডস্টাইনের UI টি শীঘ্রই মুক্তি পাবে আপনার জন্য এই ডকারফিল উপাদানগুলির ট্র্যাক রাখে যাতে করে কেউ তাদের কন্টেইনারগুলির জন্য উপযুক্ত ফিট আপডেট আপডেট তৈরি করতে পারে। আশাকরি এটা সাহায্য করবে


0
2017-07-08 23:23