منصوبے کے بارے میں

Dockur Windows ایک Docker/Podman کنٹینر امیج ہے جو آپ کو Windows کو کنٹینر کے اندر چلانے دیتی ہے۔ یہ منتخب کردہ Windows ورژن کو خودکار طور پر ڈاؤن لوڈ اور انسٹال کرتی ہے، پھر پورٹ 8006 پر ویب ویور اور Microsoft Remote Desktop (RDP) کے ذریعے رسائی فراہم کرتی ہے۔ اہم خصوصیات: - Windows کو Docker کنٹینر کے اندر چلاتی ہے - خودکار ڈاؤن لوڈ اور بغیر مداخلت انسٹالیشن - جدید اور پرانے Windows ورژنز کی معاونت، Windows 95 سے Windows 11 تک، نیز Windows Server 2003-2025 اور کچھ کمیونٹی ورژنز جیسے Tiny11 اور ReactOS - KVM ایکسلریشن کے ساتھ تقریباً مقامی کارکردگی - قابلِ تخصیص CPU، میموری اور اسٹوریج مختص - میموری بیلوننگ کے ساتھ متحرک میموری مختص - USB پاس تھرو اور ہوسٹ فولڈر شیئرنگ - NAT، user-mode، macvlan اور macvtap نیٹ ورکنگ کی معاونت - براؤزر تک اختیاری آڈیو اسٹریمنگ - انسٹالیشن کے دوران Active Directory ڈومین میں شامل ہو سکتی ہے - انسٹالیشن کے بعد حسبِ ضرورت کمانڈز یا install.bat اسکرپٹ چلا سکتی ہے تقاضے: - KVM سپورٹ کے ساتھ Linux ہوسٹ پر Docker یا Podman - Windows 11 پر nested virtualization فعال کے ساتھ Docker Desktop یا Podman Desktop - کم از کم 2 GB دستیاب RAM - کم از کم 32 GB خالی ڈسک اسپیس Linux، macOS اور Windows 10 پر Docker Desktop کی معاونت نہیں ہے کیونکہ یہ کنٹینرز کو KVM رسائی فراہم نہیں کرتا۔ بنیادی Docker Compose استعمال: ```yaml services: windows: image: dockurr/windows container_name: windows environment: VERSION: "11" devices: - /dev/kvm - /dev/net/tun cap_add: - NET_ADMIN ports: - 8006:8006 - 3389:3389/tcp - 3389:3389/udp volumes: - ./windows:/storage restart: always stop_grace_period: 2m ``` کنٹینر شروع کرنے کے بعد، براؤزر میں http://127.0.0.1:8006/ کھولیں اور خودکار انسٹالیشن مکمل ہونے کا انتظار کریں۔ ڈیفالٹ RDP اسناد صارف نام `Docker` اور پاس ورڈ `admin` ہیں، جنہیں `USERNAME` اور `PASSWORD` ماحولیاتی متغیرات کے ذریعے تبدیل کیا جا سکتا ہے۔ عام ماحولیاتی متغیرات میں شامل ہیں: - `VERSION` — Windows ورژن منتخب کرتا ہے، مثلاً `11`، `10`، `2022`، یا حسبِ ضرورت ISO URL - `LANGUAGE` — انسٹالیشن زبان منتخب کرتا ہے - `RAM_SIZE` اور `CPU_CORES` — مختص وسائل کو ایڈجسٹ کرتے ہیں - `DISK_SIZE` — ڈیفالٹ 64 GB ڈسک سائز تبدیل کرتا ہے - `DISK2_SIZE` / `DISK3_SIZE` — اضافی ڈسکیں شامل کرتے ہیں - `AUDIO` — براؤزر آڈیو اسٹریمنگ فعال کرتا ہے - `DOMAIN` اور `DOMAIN_OU` — خودکار Active Directory ڈومین شمولیت - `DHCP` — Windows کو راؤٹر سے براہِ راست IP طلب کرنے دیتا ہے - `ARGUMENTS` — اضافی QEMU آرگیومنٹس پاس کرتا ہے، مثلاً USB ڈیوائس پاس تھرو کے لیے اسٹوریج کو `/storage` پر bind mount کے ذریعے تبدیل کیا جا سکتا ہے۔ `/shared` پر بائنڈ کردہ فولڈر Windows ڈیسک ٹاپ پر `Shared` اور ڈرائیو `Z:` کے طور پر ظاہر ہوتا ہے۔ غیر معاون امیج انسٹال کرنے کے لیے `/custom.iso` پر ISO ماؤنٹ کیا جا سکتا ہے، یا `VERSION` کے ذریعے URL فراہم کیا جا سکتا ہے۔ پروجیکٹ نوٹ کرتا ہے کہ macvlan نیٹ ورکنگ کنٹینر IP کو Docker ہوسٹ سے قابلِ رسائی ہونے سے روکتی ہے، اور یہ کہ پہلی لانچ کے دوران USB ماس اسٹوریج ڈیوائسز کو منقطع رکھا جانا چاہیے تاکہ حادثاتی فارمیٹنگ سے بچا جا سکے۔ پروجیکٹ میں صرف اوپن سورس کوڈ موجود ہے اور یہ خود Windows تقسیم نہیں کرتا۔ کوڈ میں پائی جانے والی پروڈکٹ کیز Microsoft کی جانب سے آزمائشی مقاصد کے لیے شائع کردہ عمومی انسٹالیشن کیز ہیں اور درست ایکٹیویشن لائسنس نہیں ہیں۔ صارفین خود ذمہ دار ہیں کہ ان کے پاس درست Windows لائسنس موجود ہو۔