পটভূমি:
বর্তমানে আমরা আমাদের পরিষেবার জন্য ডকার এবং ডকার রচনা ব্যবহার করছি। আমরা বিভিন্ন পরিবেশের জন্য কনফিগারেশনটিকে ফাইলগুলিতে বহিরাগত করেছি যা অ্যাপ্লিকেশন দ্বারা পঠিত পরিবেশের ভেরিয়েবলগুলি সংজ্ঞায়িত করে। উদাহরণস্বরূপ একটি prod.env
ফাইল:
ENV_VAR_ONE=Something Prod
ENV_VAR_TWO=Something else Prod
এবং একটি test.env
ফাইল:
ENV_VAR_ONE=Something Test
ENV_VAR_TWO=Something else Test
সুতরাং আমরা ধারকটি শুরু করার সময় কেবলমাত্র ফাইল prod.env
বা test.env
ফাইলটি ব্যবহার করতে পারি :
docker run --env-file prod.env <image>
আমাদের অ্যাপ্লিকেশন তারপরে সংজ্ঞায়িত পরিবেশ ভেরিয়েবলের উপর ভিত্তি করে এর কনফিগারেশনটি তুলবে prod.env
।
প্রশ্নসমূহ:
- কুবারনেটসের কোনও ফাইল (উদাহরণস্বরূপ কোনও পোড সংজ্ঞায়িত করার সময়) এর মতো হার্ডকোডিংয়ের পরিবর্তে পরিবেশের পরিবর্তনগুলি সরবরাহ করার কোনও উপায় আছে:
apiVersion: v1 ধরনের: পড মেটাডেটা: লেবেল: প্রসঙ্গ: ডকার-কে 8 এস-ল্যাব নাম: mysql-pod নাম: mysql-pod অনুমান: পাত্রে: - env: - নাম: MYSQL_USER মান: mysql - নাম: MYSQL_PASSWORD মান: mysql - নাম: MYSQL_DATABASE AB মান: নমুনা - নাম: MYSQL_ROOT_PASSWORD মান: সুপারসেক্রেট চিত্র: "মাইএসকিএল: সর্বশেষ" নাম: mysql বন্দরসমূহ: - ধারকবন্দর: 3306
- যদি এটি সম্ভব না হয় তবে প্রস্তাবিত পদ্ধতির কী?
Secret
বাConfigMap
সংস্থান তৈরি করতে চাই না কারণ এটি কেবল সাময়িক এবং পরীক্ষার জন্য ব্যবহার। আমার কাছে কে 8 এস ক্লাস্টারে সীমাবদ্ধ অনুমতি রয়েছে। আমি সম্ভবত একটিSecret
উত্স তৈরি করতে সক্ষম হব তবে এটি তৈরি হয়ে গেলে আমি সেগুলি মুছতে সক্ষম হবো না।