क्लाउड-इनिट फाइलें अनिवार्य रूप से बूटस्ट्रैप कोड हैं, जो प्रत्येक स्टार्टअप से पहले चलती हैं, और दूसरों के बीच - फ़ाइलों को संशोधित कर सकती हैं, सेवाएं सेट कर सकती हैं, उपयोगकर्ता बना सकती हैं, आदि।
सभी प्रकार की बूंदें क्लाउड-इनिट की सभी कार्यात्मकताओं का समर्थन नहीं करती हैं, उदाहरण के लिए कोरओएस इसका उपयोग करता है इसका कार्यान्वयन, मान्य मूल्यों के बहुत सीमित उपसमूह के साथ है।
टेराफॉर्म में इसका उपयोग करने के लिए, बस छोटी बूंद निर्माण के दौरान क्लाउड-इनिट फ़ाइल प्रदान करें:
main.tf
:
resource "digitalocean_droplet" "web" {
image = "coreos-stable"
name = "web"
region = "lon1"
size = "2gb"
private_networking = true
ssh_keys = ["${digitalocean_ssh_key.dodemo.id}"]
user_data = "${file("web.conf")}"
}
web.conf
:
#cloud-config
coreos:
units:
- name: "etcd2.service"
command: "start"
- name: "fleet.service"
command: "start"
यह उदाहरण के लिए एक छोटी बूंद बनायेगा, जहाँ CoreOS स्टार्टअप के दौरान etcd2 और बेड़े चलाएगा
आप इस रिपॉजिटरी में कुछ और उदाहरण पा सकते हैं , जहां मैं दिखाता हूं कि कोर के लिए कुछ सरल डॉकटर आधारित सेवाओं को स्थापित करने के लिए इन कॉन्फ़िगरेशन विकल्पों का उपयोग कैसे किया जा सकता है