आइए हम कहते हैं कि हमारे पास एक सर्वर है जिसमें lxc इंस्टॉल है, और एक lxc कंटेनर का उपयोग आधार img के रूप में किया जाता है /var/lib/lxc/ubuntu_base
। सादगी के लिए आइए बेस इमग कॉपी करने के बाद कॉन्फिग चेंजेस को भूल जाते हैं।
कुछ लोग नए कंटेनर बनाने के लिए सबवोल्यूम्स और स्नैपशॉट का उपयोग करने का सुझाव देते हैं, लेकिन एक सिमेरिलर परिणामों के साथ आसानी से cp --reflink कर सकता है।
तो कई कंटेनरों के प्रबंधन के लिए प्रॉपर तरीका (या जो बेहतर है) क्या है?
- स्नैपशॉट
यह तरीका सबसे अच्छा लगता है, लेकिन lxc- नष्ट जैसे कमांड काम नहीं करेंगे क्योंकि यह निर्देशिका को हटाने में सक्षम नहीं होगा।
btrfs subvolume snapshot /var/lib/lxc/ubuntu_base /var/lib/lxc/container_1
- Reflink के साथ सी.पी.
मुझे यकीन नहीं है कि इस या स्नैपशॉट के बीच कोई प्रदर्शन अंतर है
cp --reflink=always /var/lib/lxc/ubuntu_base /var/lib/lxc/container_1
- या क्या ऐसा करने का कोई और बेहतर तरीका है जिसके बारे में मुझे जानकारी नहीं है।
संपादित करें:
एक बात जो मैंने रिफ़्लिंक विकल्प के साथ देखी है, वह यह है कि आप आधार कंटेनर को नहीं हटा सकते हैं यदि अन्य चल रहे हैं, क्योंकि /proc
और /dev
माउंट किए जाते हैं और कभी नहीं बदले जाते हैं, संदर्भ को हमेशा एक ही है। लेकिन सभी कॉपी किए गए कंटेनरों को बंद करने से मदद मिलती है।