প্রকল্প সম্পর্কে

Knot হল ক্লাউড ডেভেলপমেন্ট এনভায়রনমেন্টের জন্য একটি ওপেন-সোর্স ম্যানেজমেন্ট সমাধান, যা Nomad ক্লাস্টারের ভিতরে বা লোকাল মেশিনে চালানোর জন্য ডিজাইন করা হয়েছে। এটি একটি ব্রাউজার-ভিত্তিক ওয়েব ইন্টারফেস এবং কমান্ড-লাইন টুল একত্রিত করে, যাতে প্রতিটি ডেভেলপারকে নিজের কনফিগারেশন বজায় রাখতে না হয়, দলগুলো ডেভেলপমেন্ট এনভায়রনমেন্ট ডিপ্লয় ও অ্যাক্সেস করতে পারে। README-তে বর্ণিত মূল ক্ষমতাগুলো: - এনভায়রনমেন্ট তৈরি ও পরিচালনার জন্য ওয়েব-ভিত্তিক ম্যানেজমেন্ট ইন্টারফেস। - ব্রাউজারে Visual Studio Code এবং Code Server অ্যাক্সেস, সাথে ব্রাউজার-ভিত্তিক টার্মিনাল। - কন্টেইনার অ্যাক্সেস সহজ করার জন্য কমান্ড-লাইন টুল। - ইউজার ও পারমিশন ম্যানেজমেন্ট, কোন টেমপ্লেট ইউজাররা দেখতে পাবে তা নিয়ন্ত্রণ করার জন্য গ্রুপ, এবং কাস্টম রোল। - ধারাবাহিক, পুনরাবৃত্তিযোগ্য ডেভেলপমেন্ট স্পেসের জন্য এনভায়রনমেন্ট টেমপ্লেট। - ক্লাস্টার ম্যানেজমেন্টের জন্য Nomad-এর সাথে ইন্টিগ্রেশন, এবং Docker বা Podman-এর মাধ্যমে লোকাল কন্টেইনার সাপোর্ট। - KVM ভার্চুয়াল মেশিন: স্পেসগুলো KVM-সক্ষম নোডে সম্পূর্ণ VM হিসেবে চলতে পারে, ক্লাউড ইমেজ থেকে বুট করা হয়, সাথে bridged (স্ট্যাটিক IP) বা NAT নেটওয়ার্কিং। - কোটা যা রিসোর্স ব্যবহার এবং প্রতি ইউজারের স্পেস সংখ্যা সীমিত করে। - স্পেসের জন্য স্বয়ংক্রিয়ভাবে তৈরি ডেভেলপমেন্ট URL। - KasmVNC-এর মতো ওয়েব-ভিত্তিক VNC সার্ভার সাপোর্ট। - রিমোট সার্ভার যাতে এনভায়রনমেন্ট ডেভেলপারদের কাছে ডিপ্লয় করা যায়, যখন টেমপ্লেট ও ইউজার কেন্দ্রীয়ভাবে পরিচালিত হয়, একক পয়েন্ট অফ ফেইলিউর এড়ানো যায়। - অন্যান্য ইউজারদের সাথে স্পেস শেয়ার করা, SSH ও টার্মিনাল অ্যাক্সেস দেওয়া। - Syslog-সামঞ্জস্যপূর্ণ লগিং, উইন্ডোতে প্রদর্শন সহ। - প্রয়োজন হলে এনভায়রনমেন্ট নিরাপদে ইন্টারনেটে প্রকাশ করার জন্য টানেলিং। - স্পেসের ভিতর থেকে লোকাল মেশিনের পরিষেবাগুলিতে নিরাপদে সংযোগ করার জন্য লোকাল সার্ভিস। - অন্যান্য সিস্টেমের সাথে ইন্টিগ্রেশনের জন্য API, X-Knot-Api-Version রিকোয়েস্ট হেডারের মাধ্যমে ভার্সনিং সহ; নন-ব্রেকিং পরিবর্তন সব ভার্সনে প্রযোজ্য, ব্রেকিং পরিবর্তন শুধুমাত্র সর্বশেষ ভার্সনে দেখা যায়। নিরাপত্তা নোট: Knot বিশ্বস্ত, প্রাইভেট নেটওয়ার্কের জন্য তৈরি, খোলা ইন্টারনেটে সরাসরি প্রকাশের জন্য নয়, ডেভেলপাররা VPN বা অনুরূপ মাধ্যমে সংযোগ করে। একাধিক লোকেশনে ডিপ্লয়মেন্টের জন্য মেশ নেটওয়ার্ক উপযুক্ত হতে পারে। টানেলিং সক্ষম হলে, টানেল পোর্ট ওয়েব ও এজেন্ট ইন্টারফেস থেকে আলাদা, এবং পাবলিক ট্রাফিক শুধুমাত্র টানেল ইন্টারফেসে নির্দেশিত হওয়া উচিত। ওয়েব ইন্টারফেস ইন্টারনেটে প্রকাশ করলে সময়-ভিত্তিক ওয়ান-টাইম পাসওয়ার্ড (TOTP) সুপারিশ করা হয়, যা সাধারণ অথেন্টিকেটর অ্যাপের সাথে কাজ করে। ডকুমেন্টেশন এবং কুইক-স্টার্ট গাইড getknot.dev-এ পাওয়া যায়। আইকনগুলো Heroicons, Flowbite, dashboard-icons এবং devicon থেকে নেওয়া, শুধুমাত্র শনাক্তকরণের জন্য ব্যবহৃত। প্রকল্পটি Apache 2.0 লাইসেন্সের অধীনে প্রকাশিত।