क्या वास्तविक ओएस पर सभी सॉफ़्टवेयर इंस्टॉल करने के लिए डॉकरफ़ाइल को बैश स्क्रिप्ट में परिवर्तित करने का कोई आसान तरीका है? कारण यह है कि डॉकर कंटेनर मैं नहीं बदल सकता और मैं बाद में कुछ चीजें बदलना चाहता हूं अगर वे काम नहीं करते हैं।डॉकरफ़ाइल से बैश स्क्रिप्ट को परिवर्तित करें
उत्तर
संक्षेप में - नहीं।
एक उपकरण ऐसे dockerfile-parse के रूप में आप अलग-अलग RUN
कमांड चलाने सकता है के साथ Dockerfile पार्स करने से है, लेकिन इस Dockerfile के उत्पादन को दोहराने नहीं होता।
आपको एक ही ओएस का एक ही संस्करण चलाना होगा।
ADD
और COPY
कमांड फाइल सिस्टम को प्रभावित करते हैं, जो कि अपने नामस्थान में है। कंटेनर के बाहर इन्हें चलाने से संभावित रूप से आपके मेजबान सिस्टम को तोड़ सकता है। आपके होस्ट में ऐसी जगहें भी होंगी जहां कंटेनर छवि नहीं होगी।
VOLUME
माउंट्स फाइलटाइम को भी प्रभावित करेंगे।
FROM
छवि (जो बदले में अन्य छवियों से निकली जा सकती है) में अन्य एप्लिकेशन इंस्टॉल हो सकते हैं।
लेखन बड़ी स्थापना या डाउनलोड चरण होने पर डॉकरफ़ाइल एक धीमी प्रक्रिया हो सकती है। इसे कम करने के लिए, नए संकुल को नए RUN
कमांड (कैश का लाभ उठाने के लिए) के रूप में जोड़ने का प्रयास करें और कार्यक्षमता पूर्ण होने पर परतों को अनुकूलित/संपीड़ित करने के लिए सुविधाओं को बढ़ाएं।
आप अपने कंटेनर छवियों के लिए टीडीडी दृष्टिकोण प्राप्त करने और विकास के दौरान प्रतिक्रियाओं को रोकने के लिए ServerSpec जैसे कुछ भी उपयोग करना चाह सकते हैं।
सर्वश्रेष्ठ अभ्यास दस्तावेज़ here, gotchas और original article।
आप इस
FROM <base>
RUN apt-get update -y
RUN apt-get install <some application> -y
तरह dockerfile अंदर आवेदन स्थापित कर सकते हैं मूल रूप से आप एक डोकर कंटेनर की फ़ाइल "डोकर निर्यात", का उपयोग कर प्रणाली की एक प्रति है जिसे आप एक पाश डिवाइस के लिए लिख सकते हैं कर सकते हैं:
docker build -t <YOUR-IMAGE> ...
docker create --name=<YOUR-CONTAINER> <YOUR-IMAGE>
dd if=/dev/zero of=disk.img bs=1 count=0 seek=1G
mkfs.ext2 -F disk.img
sudo mount -o loop disk.img /mnt
docker export <YOUR-CONTAINER> | sudo tar x -C /mnt
sudo umount /mnt
एक डॉकर कंटेनर को कच्चे फ़ाइल सिस्टम छवि में कनवर्ट करें।
अधिक यहाँ जानकारी: http://mr.gy/blog/build-vm-image-with-docker.html
- 1. पाइथन स्क्रिप्ट से बैश स्क्रिप्ट
- 2. बैश स्क्रिप्ट से पाइथन स्क्रिप्ट
- 3. बैश स्क्रिप्ट से स्रोत फ़ाइल कैसे करें
- 4. बैश स्क्रिप्ट
- 5. बैश स्क्रिप्ट
- 6. संकलित बैश स्क्रिप्ट से सादा पाठ स्क्रिप्ट पुनर्प्राप्त करें
- 7. वैज्ञानिक नोटेशन बैश स्क्रिप्ट
- 8. बैश स्क्रिप्ट
- 9. बैश स्क्रिप्ट
- 10. बैश स्क्रिप्ट
- 11. बैश स्क्रिप्ट
- 12. बैश स्क्रिप्ट
- 13. बैश स्क्रिप्ट
- 14. बैश स्क्रिप्ट
- 15. बैश स्क्रिप्ट
- 16. बैश स्क्रिप्ट
- 17. बैश स्क्रिप्ट में पोजीशनल पैरामीटर को फिर से कैसे करें?
- 18. स्क्रिप्ट को बैश से डैश में माइग्रेट कैसे करें?
- 19. डॉकरफ़ाइल
- 20. बैश स्क्रिप्ट - डेटाबेस से परिवर्तनीय
- 21. बैश-स्क्रिप्ट
- 22. बैश स्क्रिप्ट
- 23. बैश स्क्रिप्ट से आउटपुट JSON
- 24. बैश स्क्रिप्ट
- 25. बैश स्क्रिप्ट
- 26. बैश स्क्रिप्ट
- 27. बैश स्क्रिप्ट
- 28. बैश से पहले स्क्रिप्ट चलाएं
- 29. डॉकरफ़ाइल
- 30. बैश स्क्रिप्ट
आप आदेशों Dockerfile खुद चलाता चला सकते हैं। लेकिन आप एक स्क्रिप्ट पर आधारित छवि को "रूपांतरित" नहीं कर सकते हैं। यदि आपको पसंद नहीं है कि डॉकर छवि कैसे काम करती है तो डॉकरफ़ाइल को संशोधित करें और पुनः प्रयास करें? –