- সিস্টেম ওভারহেড কমাতে wslc.exe ব্যবহার করে নেটিভ কন্টেইনার বাস্তবায়ন করা।
- পূর্ববর্তী সংস্করণগুলোর তুলনায় WSL 2 ব্যাকএন্ড ব্যবহার করে পারফরম্যান্স অপ্টিমাইজেশন।
- কর্মপ্রবাহকে সুবিন্যস্ত করতে ভিজ্যুয়াল স্টুডিও কোড এবং ডেভ কন্টেইনার্স-এর সাথে নির্বিঘ্ন সংযোগ।
- প্রতিটি পদ্ধতির জন্য প্রয়োজনীয় লাইসেন্সের শর্তাবলী এবং উইন্ডোজ সংস্করণসমূহের বিশ্লেষণ।
আপনি যদি উইন্ডোজে কর্মরত একজন ডেভেলপার হন, তাহলে সম্ভবত আপনি লিনাক্সের ক্ষমতা ব্যবহার করার এই পুরোনো দ্বিধার সম্মুখীন হয়েছেন, অথচ এর জন্য আপনার পিসি ফরম্যাট করতে বা র্যামের সবটুকু দখল করে রাখা ভার্চুয়াল মেশিন নিয়ে ঝামেলায় পড়তে চান না। সৌভাগ্যবশত, এই ইকোসিস্টেমটি ব্যাপকভাবে বিকশিত হয়েছে, এবং এখন আমাদের কাছে এমন কিছু বিকল্প রয়েছে যা WSL-এ ডকার কন্টেইনার স্থাপন করাকে অত্যন্ত সহজ করে তুলেছে, যার ফলে আমরা একটিমাত্র মেশিনেই উভয় জগতের সেরা সুবিধাগুলো উপভোগ করতে পারি।
সম্প্রতি অনেক কিছু বদলে গেছে, জটিল কনফিগারেশন থেকে প্রায় নেটিভ সলিউশনের দিকে পরিবর্তন এসেছে। আপনি গ্রাফিক্যাল ইন্টারফেসসহ কোনো প্রফেশনাল টুল খুঁজুন বা সরাসরি সিস্টেমে ইন্টিগ্রেটেড CLI-এর হালকা ব্যবহার পছন্দ করুন , আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করার জন্য সুস্পষ্ট উপায় রয়েছে, যাতে মেমোরির অভাবে আপনার কম্পিউটারকে কাকুতি-মিনতি করতে না হয়।
নতুন দৃষ্টান্ত: wslc.exe সহ নেটিভ কন্টেইনার

মাইক্রোসফট একটি সাহসী পদক্ষেপ নিয়েছে, এমন একটি পাবলিক প্রিভিউ ফিচার প্রকাশ করে যা ব্যবহারকারীদের সরাসরি লিনাক্স কন্টেইনার চালানোর সুযোগ দেয়। এর মূল আকর্ষণ হলো wslc.exe, একটি কমান্ড-লাইন ইন্টারফেস যা পরিচিত ডকার কমান্ডগুলোর অনুকরণ করে, কিন্তু এর জন্য ডকার ডেস্কটপের প্রয়োজন হয় না। সবচেয়ে আকর্ষণীয় বিষয় হলো, এটি কোনো স্ট্যান্ডার্ড WSL ডিস্ট্রিবিউশন ব্যবহার করে না; বরং এটি প্রতিটি কন্টেইনারের জন্য হালকা হাইপার-ভি মাইক্রো-ভিএম চালু করে , যা প্রসেসগুলোকে উল্লেখযোগ্যভাবে বিচ্ছিন্ন করে এবং নিরাপত্তা উন্নত করে।
এই টুলটি ব্যবহার শুরু করতে আপনার উইন্ডোজ ১১ (বিশেষত বিল্ড ২৬১০০ বা তার উচ্চতর সংস্করণ) এবং WSL-কে প্রিভিউ সংস্করণে আপডেট করুন কমান্ড ব্যবহার করে wsl --update --pre-releaseএকবার এটি হয়ে গেলে, শুধু চালান। wsl --install-feature containers সবকিছু প্রস্তুত রাখতে। কোনো ত্রুটি নেই তা পরীক্ষা করতে, আপনি দ্রুত একটি কন্টেইনার চালু করতে পারেন। wslc run --rm hello-world আর যদি আপনি শুভেচ্ছা বার্তাটি দেখেন, তার মানে হলো আপনার পরিবেশটি কার্যকর আছে।.
চলুন শুরু করা যাক: আপনার নিজের ইমেজ তৈরি করা
যখন আপনি সাধারণ উদাহরণ থেকে বাস্তব কিছুতে যেতে চান, তখন এর WSL এক্সটেনশন সহ VS Code ব্যবহার করাই আদর্শ সমাধান। ধরুন আপনার একটি Django প্রজেক্ট আছে; আপনাকে শুধু একটি ফাইল তৈরি করতে হবে যার নাম রুটে কন্টেইনারফাইল যেখানে আপনি বেস ইমেজ (যেমন পাইথন ৩) নির্ধারণ করেন, রিকোয়ারমেন্টগুলো কপি করেন এবং ডিপেন্ডেন্সিগুলো ইনস্টল করেন। তারপর, আপনি কমান্ডটি ব্যবহার করেন। wslc build -t nombre-de-tu-app . জন্য কাস্টম ইমেজ তৈরি করুন.
এটি শুরু করতে, মূল কমান্ডটি হলো wslc run -d -p 8000:8000 nombre-de-tu-appএর মাধ্যমে উইন্ডোজ কন্টেইনারের পোর্ট অ্যাক্সেস করতে পারে। ভেতরে কী ঘটছে তা দেখতে চাইলে, আপনি ব্যবহার করতে পারেন। wslc container logs অথবা অভ্যন্তরীণ কমান্ড কার্যকর করুন wslc execযদি দেখেন ডিস্ক ভরে যাচ্ছে, তাহলে ব্যবহার করতে ভুলবেন না। wslc কন্টেইনার ছাঁটাই যা আর ব্যবহার করেন না তা মুছে ফেলুন।
চিরাচরিত বিকল্প: ডকার ডেস্কটপ এবং ডাব্লিউএসএল ২

যদিও নেটিভ সলিউশনগুলো শুনতে দারুণ লাগে, এর পরিপক্কতা এবং ভিজ্যুয়াল ইন্টারফেসের কারণে ডকার ডেস্কটপই স্ট্যান্ডার্ড হিসেবে রয়ে গেছে। এখানে মূল বিষয় হলো ব্যবহার করা... WSL 2 ব্যাকএন্ডযা ভার্সন ১-এর চেয়ে অসীমভাবে দ্রুততর, কারণ এতে একটি প্রকৃত লিনাক্স কার্নেল এবং একটি নেটিভ ext4 ফাইল সিস্টেম অন্তর্ভুক্ত রয়েছে। এটি একটি বিশাল উন্নতি সাধন করেছে। ফাইল ইনপুট এবং আউটপুট গতিঅপারেশন তৈরি করা যেমন npm install o git clone উড়তে।
আপনি যদি পুরোনো কোনো ইনস্টলেশন থেকে এসে থাকেন, তবে সবচেয়ে ভালো কাজ হলো পুঙ্খানুপুঙ্খভাবে পরিষ্কার করা। অবশিষ্ট ফোল্ডারগুলো মুছে ফেলুন AppData এবং যেকোনো চিহ্ন মুছে ফেলুন DOCKER_HOST সংরক্ষণাগারে .bashrc সাধারণ ভুলটি এড়িয়ে চলা অপরিহার্য। ডকার ডেমনের সাথে সংযোগএকবার পরিষ্কার হয়ে গেলে, ডকার ডেস্কটপের সর্বশেষ সংস্করণটি ইনস্টল করুন এবং নিশ্চিত করুন যে সেটিংসে বিকল্পটি চেক করা আছে। আপনার WSL ডিস্ট্রোর সাথে ইন্টিগ্রেশন.
উন্নত ব্যবহারকারীদের জন্য ম্যানুয়াল কনফিগারেশন
কিছু ব্যবহারকারী কর্পোরেট লাইসেন্সিং সমস্যা বা রিসোর্স খরচের কারণে ডকার ডেস্কটপ ব্যবহার করতে পছন্দ করেন না। সেক্ষেত্রে, WSL-এর মধ্যে সরাসরি উবুন্টুতে ডকার ইঞ্জিন ইনস্টল করা যেতে পারে। এর জন্য নিরাপত্তা ঝুঁকি এড়াতে একটি নন-রুট ব্যবহারকারী তৈরি করতে হয় এবং তাকে অনুমতি প্রদান করতে হয়। ঘামের সুযোগ এবং ইনস্টলেশনটি চালান docker.io y docker-compose টার্মিনালের মাধ্যমে। এটি একটি কিছুটা ম্যানুয়াল পদ্ধতি, কিন্তু এটি আপনাকে একটি সুযোগ দেয়। শয়তানের উপর সম্পূর্ণ নিয়ন্ত্রণ এবং সিস্টেম সম্পদ।
পথের তুলনা ও নির্বাচন

wslc এবং Docker Desktop-এর মধ্যে কোনটি বেছে নেবেন, তা মূলত আপনার প্রোফাইলের উপর নির্ভর করে। আপনি যদি একটি বড় কোম্পানিতে কাজ করেন এবং চান লাইসেন্সিং খরচ এড়িয়ে চলুনঅথবা যদি আপনার ভিএস কোডে দ্রুত ডেভেলপমেন্টের জন্য শুধু কন্টেইনারের প্রয়োজন হয়, তবে ডব্লিউএসএলসি (WSLC) হলো সেরা পছন্দ। তাছাড়া, এর সাথে ইন্টিগ্রেশন... ভিএস কোড ডেভ কন্টেইনার এটা খুবই সহজ: আপনাকে শুধু ডকার পাথ পরিবর্তন করতে হবে wslc JSON সেটিংসে।
অন্যদিকে, আপনি যদি Kubernetes বা Rancher Desktop-এর মতো অর্কেস্ট্রেটরের উপর নির্ভর করেন , তাহলে Docker Desktop অপরিহার্য, কারণ WSL-এর নিজস্ব সমাধানে এখনও সেই অর্কেস্ট্রেশন স্তরটি অন্তর্ভুক্ত নেই। এছাড়াও, মনে রাখবেন যে wslc-এর জন্য প্রয়োজনীয় Hyper-V আইসোলেশন ফিচারগুলো ব্যবহার করতে Windows 11 Pro বা Enterprise সংস্করণ থাকা বাধ্যতামূলক, কারণ এর Home সংস্করণে এই ফিচারগুলো সমর্থিত নয়।
উইন্ডোজে একটি সুবিন্যস্ত কন্টেইনার এনভায়রনমেন্ট ডেভেলপমেন্টের অভিজ্ঞতাকে আমূল বদলে দেয়, যার ফলে আমরা মূল অপারেটিং সিস্টেমকে ভারাক্রান্ত না করেই ডেটা অ্যানালাইসিস টুল, ওয়েব সার্ভার এবং ডেটাবেসের মধ্যে সহজেই কাজ করতে পারি। মাইক্রোসফটের মাইক্রো-ভিএম-এর হালকা বৈশিষ্ট্য হোক বা ডকার স্যুটের দৃঢ়তা, মূল বিষয় হলো আমাদের দৈনন্দিন কাজের ধারায় সর্বোচ্চ পারফরম্যান্স নিশ্চিত করতে এবং নমনীয়তা বজায় রাখতে WSL 2 আর্কিটেকচারকে কাজে লাগানো ।