Docker-OSX
Docker-OSX परिचय
- Docker-OSX एक प्रोजेक्ट है जो Docker कंटेनर में macOS चलाने की सुविधा देता है।
- यह X11 forwarding, iMessage security research, iPhone USB support जैसी कई सुविधाएँ प्रदान करता है।
- Linux और Windows पर macOS security research की जा सकती है।
कम्युनिटी और सपोर्ट
- Docker-OSX Discord और Telegram सर्वर चलाता है।
- सवालों या आइडियाज़ को साझा करने के लिए एक सक्रिय कम्युनिटी मौजूद है।
- व्यक्तिगत पूछताछ LinkedIn या Sick.Codes वेबसाइट के माध्यम से की जा सकती है।
लेखक और योगदानकर्ता
- इस प्रोजेक्ट का रखरखाव Sick.Codes करता है।
- अतिरिक्त योगदानकर्ताओं की सूची GitHub पर देखी जा सकती है।
- OSX-KVM और KVM-OpenCore प्रोजेक्ट्स को धन्यवाद दिया गया है।
क्विक स्टार्ट गाइड
- वीडियो इंस्टॉलेशन ट्यूटोरियल उपलब्ध है।
- Windows उपयोगकर्ता अतिरिक्त नोट्स देखें।
- Catalina, Big Sur, Monterey, Ventura, Sonoma सहित macOS के कई वर्ज़न सपोर्ट किए जाते हैं।
Catalina
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
sickcodes/docker-osx:latest
Big Sur
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
sickcodes/docker-osx:big-sur
Monterey
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
-e GENERATE_UNIQUE=true \
-e MASTER_PLIST_URL='https://raw.githubusercontent.com/sickcodes/osx-serial-generator/…' \
sickcodes/docker-osx:monterey
Ventura
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
-e GENERATE_UNIQUE=true \
-e MASTER_PLIST_URL='https://raw.githubusercontent.com/sickcodes/osx-serial-generator/…' \
sickcodes/docker-osx:ventura
Sonoma
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
-e GENERATE_UNIQUE=true \
-e CPU='Haswell-noTSX' \
-e CPUID_FLAGS='kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on' \
-e MASTER_PLIST_URL='https://raw.githubusercontent.com/sickcodes/osx-serial-generator/…' \
sickcodes/docker-osx:sonoma
Catalina प्री-इंस्टॉल्ड
docker pull sickcodes/docker-osx:auto
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
-e GENERATE_UNIQUE=true \
sickcodes/docker-osx:auto
पुराने सिस्टम
High Sierra
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
sickcodes/docker-osx:high-sierra
Mojave
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
sickcodes/docker-osx:mojave
इमेज को मैन्युअली डाउनलोड करके उपयोग करना
- अगर Docker का CDN धीमा हो, तो इमेज को मैन्युअली डाउनलोड करके इस्तेमाल किया जा सकता है।
wget https://images2.sick.codes/mac_hdd_ng_auto.img
docker run -it \
--device /dev/kvm \
-p 50922:10022 \
-v "${PWD}/mac_hdd_ng_auto.img:/image" \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e "DISPLAY=${DISPLAY:-:0.0}" \
-e GENERATE_UNIQUE=true \
-e MASTER_PLIST_URL=https://raw.githubusercontent.com/sickcodes/Docker-OSX/… \
sickcodes/docker-osx:naked
iPhone USB passthrough
- iPhone USB passthrough के लिए कई तरीके उपलब्ध हैं।
- डेस्कटॉप PC पर @Silfalion के निर्देशों का पालन किया जा सकता है।
- लैपटॉप पर usbfluxd का उपयोग करके network-style passthrough किया जा सकता है।
परफॉर्मेंस ऑप्टिमाइज़ेशन
- osx-optimizer का उपयोग करके परफॉर्मेंस बेहतर की जा सकती है।
- GUI login screen को skip करना, Spotlight indexing को disable करना जैसे कई optimization options उपलब्ध हैं।
डिस्क स्पेस बढ़ाना
- /var/lib/docker को external drive पर ले जाकर डिस्क स्पेस खाली किया जा सकता है।
- विस्तृत ट्यूटोरियल Sick.Codes वेबसाइट पर उपलब्ध है।
तकनीकी विवरण
- macOS के कई वर्ज़न सपोर्ट किए जाते हैं: High Sierra, Mojave, Catalina, Big Sur, Monterey, Ventura, Sonoma।
- iPhone OSX KVM, folder sharing, USB passthrough, SSH और VNC का सपोर्ट।
- X11 forwarding और QEMU + KVM आधारित रनटाइम।
आवश्यकताएँ
- कम से कम 20GB डिस्क स्पेस आवश्यक है।
- BIOS settings में virtualization सक्षम होना चाहिए।
- x86_64 KVM host आवश्यक है।
TODO
- security research के लिए documentation।
- GPU acceleration support।
- virt-manager support।
Docker इमेज
- Docker Hub से Docker-OSX इमेज डाउनलोड की जा सकती है।
Kubernetes support
- Docker-OSX Kubernetes को सपोर्ट करता है।
- Kubernetes Helm Chart और documentation को
helm डायरेक्टरी में देखा जा सकता है।
सपोर्ट
- छोटे सवाल या issues के लिए GitHub issues के माध्यम से संपर्क किया जा सकता है।
- प्रोफेशनल सपोर्ट सेवाएँ भी उपलब्ध हैं।
लाइसेंस और योगदान
- Docker-OSX GPL v3+ लाइसेंस का पालन करता है।
- योगदान का स्वागत है, और contributors की सूची GitHub पर देखी जा सकती है।
समान प्रोजेक्ट्स
- Dock Droid: Docker कंटेनर में Android चलाना।
- Docker-eyeOS: Docker कंटेनर में iOS 12 चलाना।
- Bluebubbles.app: Docker में iMessage relayer चलाना।
अस्वीकरण
- यदि आपको Apple security research में रुचि है, तो यह प्रोजेक्ट उपयोगी हो सकता है।
- Hackintosh, OSX-KVM, Docker-OSX से जुड़े कानूनी मुद्दों की ज़िम्मेदारी संबंधित उपयोगकर्ता की होगी।
GN⁺ का सारांश
- Docker-OSX एक उपयोगी टूल है जो Docker कंटेनर में macOS चलाने की सुविधा देता है।
- यह macOS के कई वर्ज़न सपोर्ट करता है और security research व development के लिए उपयोगी है।
- कम्युनिटी सपोर्ट सक्रिय है, और यह कई installation व optimization options प्रदान करता है।
- समान कार्यक्षमता वाले प्रोजेक्ट्स में Dock Droid और Docker-eyeOS शामिल हैं।
1 टिप्पणियां
Hacker News की राय
GPU acceleration के लिए PCI passthrough के ज़रिए समर्थित dGPU (AMD RX 6xxx या उससे ऊपर) का उपयोग करना होगा
संबंधित projects:
Sick Codes के साथ एक इंटरव्यू में इस product के approach पर चर्चा की गई है
home server पर iCloud sync चलाना अच्छा रहेगा
यह project फिलहाल सिर्फ x86-64 Docker images देता है, aarch64 नहीं
iOS build आज़माना चाहूँगा
QEMU container में चलता है, और उसके अंदर macOS चलता है
सोच रहा हूँ कि क्या macOS images को redistribute करना license के तहत अनुमति है
सोच रहा हूँ कि जब Intel support के बिना नया macOS version आएगा तो क्या प्रगति रुक जाएगी
मुझे "USB passthrough" शब्द का गलत इस्तेमाल पसंद नहीं है