2015-11-28 8 views
6

पर आरपीआई छवि बनाएं यह अधिक सामान्य हो सकता है और एक मशीन आर्किटेक्चर ए के साथ आर्किटेक्चर बी के लिए एक छवि बना रहा है। मैं वर्तमान में पाइथन निर्भरताओं के साथ एक छवि बनाना चाहता हूं। जो रास्पबेरी-पीआई पर समय लेता है लेकिन मैक पर तेज़ है। जब मुझे अंत में एक त्रुटि मिलती है तो उसे पुनर्निर्माण की आवश्यकता होती है। क्या मैक पर इस छवि को बनाने का कोई तरीका है और फिर इसे मेरे रास्पबेरी पीआई पर खींचें?डॉकर - मैक

उत्तर

8

एक पूर्ण वैकल्पिक वास्तुकला का अनुकरण करना आमतौर पर बहुत धीमा होता है। QEMU आपको लिनक्स पर ऐसा करने की अनुमति देता है और इसे डॉकर कंटेनर में एकीकृत किया जा सकता है।

भवन के लिए, आप QEMU User Emulation का उपयोग कर सकते हैं जो पूर्ण अनुकरण से बहुत तेज है। यह आपके हार्डवेयर को सीधे एआरएम बाइनरी निष्पादित करने की अनुमति देता है और क्रॉस-संकलन और क्रॉस-डिबगिंग को कम करने के लिए उपयोग किया जाता है।

पहले get VirtualBox और get Vagrant और इंस्टॉल करें।

सेटअप (या Docker Toolbox से docker-machine का उपयोग करें) अपने वीएम

mkdir raspbian-docker 
cd raspbian-docker 
vagrant init debian/jessie64 
vagrant up 
vagrant ssh 
अब आप अपने डेबियन लिनक्स वी एम, सेटअप डोकर मेजबान

sudo su - 
apt-get install qemu-user-static 
curl https://get.docker.com/ | sh 

भागो एक raspbian पर्यावरण पर हैं

docker run -ti \ 
    --volume /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static \ 
    philipz/rpi-raspbian \ 
    bash 

और जो भी आपको चाहिए वह करें।

फिर आप छवियों को स्थानांतरित करने के लिए docker export और docker import कर सकते हैं। तुम भी the hub या setup a registry का उपयोग push/pull

Docker Toolbox उपयोग करने के लिए भी आप आसानी से मैक पर एक VirtualBox वी एम के माध्यम से डोकर चलाने के लिए अनुमति देगा कर सकते हैं, लेकिन मैं और अधिक मुसीबतों से इसके लायक हो गया है आई है (यदि आप आवारा सेटअप जब)।

+0

सरल और अच्छा समाधान और यह काम करता है ... मुझे यह पसंद है धन्यवाद। – Clempat

+0

मैं भी https://www.scaleway.com/ खोजता हूं। मैं पंजीकरण नहीं कर सका। कोई निमंत्रण नहीं है लेकिन इस उद्देश्य के लिए उपयोग करना दिलचस्प लगता है ... – Clempat

0

आप आरपीआई के distro बिल्डर कांटा और अपनी आवश्यकताओं के लिए अनुकूलित कर सकते हैं: https://github.com/RPi-Distro/pi-gen यह डोकर पर qemu-debootstrap, मैट के जवाब के रूप में के लिए इसी तरह का उपयोग करता है।

यदि आप हाथ आर्किटेक्चर के लिए डॉकर छवियां भी बनाने की योजना बना रहे हैं, तो qemu-debootstrap मदद नहीं करेगा। इस मामले में आप डॉकर सीधे एआरएम सर्वर पर चला सकते हैं, जैसे स्केलेवे द्वारा पेश किए गए।

मेरा सीआई सर्वर उपरोक्त संयोजन का संचालन करता है, ताकि लगातार लोड किए गए आर्म डॉकर छवियों के साथ एक ओएस छवि का निर्माण किया जा सके। फिर, device-init डॉकर छवियों को डॉकर छवियों के रूप में लोड करने का ख्याल रखता है। नकारात्मकता यह है कि डिवाइस-इनिट को पहले बूट के बाद डॉकर छवियों को प्री-लोड करने में कुछ घंटे लग सकते हैं।

संबंधित मुद्दे