में माइक्रोसॉफ्ट कंपाइलर मैं कोड बेस के निर्माण का समर्थन करने के लिए एक डॉकर कंटेनर सेट करना चाहता हूं जो पूरी तरह से सी ++ में लिखा गया है, और जेनरेट किया गया एप्लिकेशन केवल विंडोज़ पर चलता है।डॉकर
इस उद्देश्य के लिए, मुझे निर्माण के समर्थन के लिए हमारे वर्तमान निर्माण पर्यावरण की प्रतिलिपि बनाने वाला एक कंटेनर सेट अप करने की आवश्यकता है।
मैं नीचे की तरह एक Dockerfile कुछ इस तरह के एक कंटेनर के निर्माण के लिए बनाने की जरूरत:
कृपया (छद्म कोड Dockerfile की तरह के रूप में निम्नलिखित पर विचार की अनदेखी apt-get और खिड़कियां उपकरण स्थापित करने के लिए किसी भी अन्य उपयोगिता पर विचार
FROM: Windows10 // A base windows kernel
RUN apt-get install -y VisualStudio // Installing the Visual Studio for compilation of C++ files
RUN apt-get install -y cygwin // Since I am using some cygwin utlities in build process
RUN apt-get install -y SigningTool // A tool I need to sign the exe
RUN apt-get install -y CompressionTool // A tool I need to compress the exe
RUN apt-get install -y BuildSystem // Custom in-house build system to generate the builds of the source code
CMD ['BuildSystem debug']
नोट:: कमांड लाइन) से हम बनाता प्रदर्शन करने के लिए हमारे संगठन में एक कस्टम निर्माण प्रणाली (और का उपयोग नहीं कर जीएनयू बनाओ) है। डिबग बिल्ड सिस्टम को प्रदान किया गया लक्ष्य है, क्योंकि मैं डीबग निष्पादन योग्य बनाना चाहता हूं।
मेरे संदेह हैं:
मैं एक VisualStudio संकलक (या किसी अन्य संकलक कि खिड़कियों पर चलाता है)
मैं कैसे की मेजबानी करते SigningTool कैसे स्थापित करते हैं, संपीड़न टूल और अन्य निष्पादन योग्य (पर डॉकर विश्वसनीय रजिस्ट्री; चाहे यह संभव हो डीटीआर पर निष्पादनयोग्य की मेजबानी के लिए)
मैं कैसे ऊपर उपकरण (संकलक, signingtool की लाइसेंस की देखभाल, सभी को चलाने के लिए लाइसेंस के लिए आवश्यक compressiontool) से करते हैं।
उपर्युक्त काम हमारे संगठन में बिल्कुल ठीक है। लेकिन मशीन स्थापित करने की प्रक्रिया (स्थापना और उपरोक्त सभी उपकरणों में बहुत समय और प्रयास लगता है)। इसलिए, मैं एक डॉकर छवि बनाना चाहता हूं जिसे एक नंगे मशीन पर तैनात किया जा सकता है, जिसमें पूरे निर्माण पर्यावरण सेटअप और बहुत कम समय में चलना होगा।
ऐसा करने का एक और महत्वपूर्ण उद्देश्य निरंतर वितरण पद्धति को अपनाना है।
कृपया अपने इनपुट प्रदान करें (सभी संदेहों पर विचार करने का प्रयास करें)।