मैं जेनकींस के लिए एक डॉकर बिल्ड को अनुकूलित करने की कोशिश कर रहा हूं। मैं अपनी डॉकर-कंपोज़ फ़ाइल का पालन कर रहा हूं और मैं जेनकिन्सफाइल बना रहा हूं जो प्रत्येक कंटेनर बना रहा है और उन्हें एक साथ जोड़ रहा है। जिस समस्या में मैं दौड़ रहा हूं वह यह है कि डॉकर-कंपोज़ फाइलें एक संदर्भ घोषित करती हैं, जहां डॉकरफ़ाइल नहीं है। जहां तक मैं समझता हूं, जेनकींस उस संदर्भ को सेट करेगा जहां डॉकरफ़ाइल है, जो जेनकिन्सफाइल या डॉकर-कंपोज़ फ़ाइल बना रहा है या नहीं, इस पर निर्भर करता है कि फ़ाइलों को एक अलग रिश्तेदार स्थान में कॉपी किया जाता है।जेनकिन्सफाइल में docker.build के लिए कस्टम संदर्भ कैसे सेट करें
फ़ोल्डर संरचना है:
workspace
|-docker
|-db
|-Dockerfile
|-entrypoint.sh
यह कैसे Dockerfile सवाल
COPY docker/db/entrypoint.sh/
में फ़ाइल के लिए कॉपी अनुदेश यह कैसे मेरे jenkinsfile फ़ाइल बनाता है वाणी है।
db:
build:
context: .
dockerfile: docker/db/Dockerfile
जो परियोजना की जड़ में संदर्भ कहते हैं: मेरी जानकारी के लिए कौन सा है कि निर्देशिका
docker.build("db", "${WORKSPACE}/docker/db")
डोकर-लिखें फ़ाइल इसे पसंद वाणी पर संदर्भ डालता है।
वहाँ किसी भी तरह से डोकर-लिखें फ़ाइल के रूप में एक ही संदर्भ का उपयोग करने के लिए इतना है कि Dockerfile के प्रति अनुदेश अपरिवर्तित और दोनों जेनकींस और के लिए मान्य रह सकते हैं एक jenkinsfile बताने के लिए है डोकर-रचना? यदि यह संभव नहीं है, तो क्या किसी को किसी भी वैकल्पिक समाधान के बारे में पता है?
क्या मैं अकेला हूं जो जेनकिंस में डॉकर एकीकरण को पूरी तरह से बेकार करता है? मेरे पास डॉकर पाइपलाइन प्लगइन का संस्करण 1.14 है और ऐसा लगता है कि दूसरा तर्क पहले ही हटा दिया गया है :-( – schneida
@schneida मैं इस बिंदु पर 1.13 चला रहा हूं, और इस उत्तर में प्रारूप अभी भी मेरे लिए काम कर रहा है। आप कोशिश कर सकते हैं 1.13 तक डाउनग्रेडिंग यह देखने के लिए कि क्या इससे कोई फर्क पड़ता है। अन्यथा, इस प्रारूप ने मेरे लिए 'डीबी-एफ डॉकर/डीबी/डॉकरफाइल' भी काम किया है जो तर्कों को जोड़ता है, और संदर्भ को छोड़ देता है –