Tôi đã đọc qua tài liệu LXD và các blog cũng như câu trả lời của stackexchange cho biết LXD được cho là có một số loại cú pháp init cho phép bạn chuyển dữ liệu cấu hình đám mây tới các vùng chứa của mình khi chúng được tạo, nhưng không có ví dụ nào trong số nhiều ví dụ đã làm việc cho tôi.Tôi đã thử làm theo các ví dụ thiết lập hồ sơ, các ví dụ truyền dữ liệu bằng cách sử dụng --config
, các ví dụ chuyển trực tiếp dữ liệu yaml vào và các ví dụ đặt dữ liệu sau init nhưng trước khi bắt đầu. Không có gì đã làm việc. Tôi đang dán vào những gì tôi hiện có... Ai đó có thể vui lòng cho tôi biết tôi đang làm gì sai và cách khắc phục không?
Ví dụ cơ bản nhất tôi có thể nghĩ ra:
xóa lxc -f x
con mèo << EOF >config.yml
#cloud-config
đầu ra: {tất cả: '| tee -a /var/log/my-cloud-init-output.log'}
gói_update: đúng
gói_upgrade: đúng
gói_reboot_if_required: đúng
gói:
- cây
chạy cmd:
- chạm /run/cloud-config-did-run
EOF
lxc khởi chạy ubuntu: x --config=user.user-data="$(cat config.yml)"
ngủ 5
lxc exec x -- bash -c "ls /run"
lxc exec x -- bash -c "cây/etc"
Điều này sẽ xuất ra /var/log/my-cloud-init-output.log
, cài đặt cây và cũng tạo một tệp trống trong/run. đầu ra để /var/log/my-cloud-init-output.log
hoạt động, nhưng không có gì khác làm. Các bản ghi không hiển thị bất cứ điều gì đặc biệt.