मेरे पास कुछ डॉकटर कंटेनर हैं जैसे:
- nginx
- वेब ऐप 1
- वेब ऐप 2
- PostgreSQL
चूंकि Nginx को वेब एप्लिकेशन 1 और 2 के अंदर वेब एप्लिकेशन सर्वर से कनेक्ट करने की आवश्यकता होती है, और वेब ऐप्स को PostgreSQL से बात करने की आवश्यकता होती है, मेरे पास इस तरह के लिंक हैं:
- Nginx --- लिंक ---> वेब ऐप 1
- Nginx --- लिंक ---> वेब ऐप 2
- वेब ऐप 1 --- लिंक ---> PostgreSQL
- वेब ऐप 2 --- लिंक ---> पोस्टग्रेक्यूएल
यह पहली बार में बहुत अच्छा काम करता है। हालाँकि, जब मैं वेब ऐप 1 और वेब ऐप 2 का नया संस्करण विकसित करता हूं, तो मुझे उन्हें बदलने की आवश्यकता है। मैं जो भी करता हूं वह वेब ऐप कंटेनरों को हटा देता है, नए कंटेनर सेट करता है और उन्हें शुरू करता है।
वेब एप्लिकेशन कंटेनरों के लिए, पहली बार में उनके आईपी पते कुछ इस तरह होंगे:
- 172.17.0.2
- 172.17.0.3
और उनके बदलने के बाद, उनके पास नए आईपी पते होंगे:
- 172.17.0.5 है
- 172.17.0.6
अब, नगीनेक्स कंटेनर में उन पर्यावरण के चर अब भी पुराने आईपी पते की ओर इशारा कर रहे हैं। यहाँ समस्या आती है। मैं कंटेनरों के बीच संबंध को तोड़े बिना कंटेनर को कैसे बदलूं? यही मुद्दा PostgreSQL का भी होगा। अगर मुझे PostgreSQL छवि संस्करण को अपग्रेड करना है, तो मुझे निश्चित रूप से इसे हटाने और नए को चलाने की आवश्यकता है, लेकिन फिर मुझे पूरे कंटेनर ग्राफ को फिर से बनाने की आवश्यकता है, इसलिए यह वास्तविक जीवन सर्वर ऑपरेशन के लिए आदर्श नहीं है।