Membuat file konfigurasi Ignition
Alat Butane adalah opsi yang disarankan untuk membuat file konfigurasi Ignition. Butane mengonsumsi file Butane Config YAML dan menghasilkan Ignition Config dalam format JSON. File JSON digunakan oleh sistem pada boot pertamanya. Ignition Config menerapkan konfigurasi dalam image, seperti pembuatan pengguna, dan instalasi unit systemd.
-
Anda telah menginstal podman atau Butane v0.20.0 atau yang lebih baru:
-
Buat file
Butane Configdan simpan dalam format.bu. Anda harus menentukan entrivariantsebagaifiot, dan entriversionsebagai1.0.0, untuk image Fedora IoT. Varianfiotbutane pada versi 1.0.0 menargetkan versi spesifikasi Ignition3.3.0. Berikut adalah contoh file Butane Config YAML:variant: fiot version: 1.0.0 ignition: config: merge: - source: http://192.168.122.1/config.ign passwd: users: - name: core groups: - wheel password_hash: password_hash_here ssh_authorized_keys: - ssh-ed25519 some-ssh-key-here storage: files: - path: /etc/NetworkManager/system-connections/enp1s0.nmconnection contents: inline: | [connection] id=enp1s0 type=ethernet interface-name=enp1s0 [ipv4] address1=192.168.122.10/24,192.168.122.1 dns=8.8.8.8; dns-search= may-fail=false method=manual mode: 0600 - path: /usr/local/bin/startup.sh contents: inline: | #!/bin/bash echo "Hello, World!" mode: 0755 systemd: units: - name: hello.service contents: | [Unit] Description=A hello world [Install] WantedBy=multi-user.target enabled: true - name: fdo-client-linuxapp.service dropins: - name: log_trace.conf contents: | [Service] Environment=LOG_LEVEL=trace -
Jalankan perintah berikut untuk mengonsumsi file
Butane Config YAMLdan menghasilkan Ignition Config dalam format JSON:$ podman run -i --rm quay.io/coreos/butane --pretty --strict < fiot.bu | tee fiot.ign { "ignition": { "config": { "merge": [ { "source": "http://192.168.122.1/config.ign" } ] }, "version": "3.4.0" }, "passwd": { "users": [ { "groups": [ "wheel" ], "name": "core", "passwordHash": "password_hash_here", "sshAuthorizedKeys": [ "ssh-ed25519 some-ssh-key-here" ] } ] }, "storage": { "files": [ { "path": "/etc/NetworkManager/system-connections/enp1s0.nmconnection", "contents": { "compression": "gzip", "source": "data:;base64,H4sIAAAAAAAC/1SKwQrCMBAF7/stNjahSEX2S0oPS/JKA822JKvQvxcFDzKnGWaKuyqi5V1nyomhh2892XmAYSuqwiiroS4S0akU/J4pH69hJkmpojXP/h6cv43Oh+B8fw3D5a9Q0saj+/L4SNcgNa5MRc5ukbzxIlsDFdi6Jy6iT9noHQAA//9IedCQoQAAAA==" }, "mode": 384 }, { "path": "/usr/local/bin/startup.sh", "contents": { "compression": "", "source": "data:;base64,IyEvYmluL2Jhc2gKZWNobyAiSGVsbG8sIFdvcmxkISIK" }, "mode": 493 } ] }, "systemd": { "units": [ { "contents": "[Unit]\nDescription=A hello world\n[Install]\nWantedBy=multi-user.target\n", "enabled": true, "name": "hello.service" }, { "dropins": [ { "contents": "[Service]\nEnvironment=LOG_LEVEL=trace\n", "name": "log_trace.conf" } ], "name": "fdo-client-linuxapp.service" } ] } }Setelah Anda menjalankan file
Butane Config YAMLuntuk memeriksa dan menghasilkan fileIgnition Config JSON, Anda mungkin mendapatkan peringatan saat menggunakan kolom yang tidak didukung, seperti partisi misalnya. Anda dapat memperbaiki kolom-kolom tersebut dan menjalankan ulang pemeriksaan.
Anda sekarang memiliki file konfigurasi JSON Ignition yang dapat Anda gunakan untuk mengustomisasi instalasi Anda.
Want to help? Learn how to contribute to Fedora Docs ›