Как передать облачную конфигурацию в LXD?

Я посещал бесчисленное множество сайтов, включая этот, пытаясь выяснить, как заставить LXD запускать облачную конфигурацию при запуске контейнера LXD. В некоторых местах рекомендуют настроить профиль (не сработало). Другие рекомендуют перенаправить файл YAML в команду lxc (не сработало), а другие рекомендуют использовать командувариант и передать файл таким образом (не сработало). В некоторых местах говорят, что я должен добавитьв мою конфигурацию, другие не заморачиваются. Некоторые даже рекомендуют использовать XML-файл. Мне явно не хватает какой-то важной информации, которую все остальные делают по умолчанию, но я не могу понять, что это такое.

Мой обновленный «простой пример», который пытается установить дерево и пытается коснуться /run/cloud-config-did-run:

      lxc delete -f x

cat << EOF >config.yml
#cloud-config
output: {all: '| tee -a /var/log/my-cloud-init-output.log'}
package_update: true
package_upgrade: true
package_reboot_if_required: true
packages:
  - tree
runcmd:
  - touch /run/cloud-config-did-run
EOF

lxc launch ubuntu: x --config=user.user-data="$(cat config.yml)"
sleep 5
lxc exec x -- bash -c "ls /run"
lxc exec x -- bash -c "tree /etc"

Выход ДЕЙСТВИТЕЛЬНО направляется на, поэтому он обрабатывается, но не что иное, какДиректива выполняется (в журналах даже не упоминаются какие-либо другие запущенные процессы или какие-либо ошибки - только стандартный код SSH-ключей).

Может отступ неправильный? Или конфиг не в том поддереве? Или не хватает какой-то магической ценности? Версия LXD, где это не работает? (Я использую версию 4.20). Я занимаюсь этим уже 10 часов, и что бы я ни делал, моя облачная конфигурация полностью игнорируется (никаких ошибок, никаких журналов, никаких записей о том, что что-то выполняется, никаких записей о том, что я когда-либо давал ему какие-либо указания сделать что-либо, кроме стандартный кейген ssh, который, по-видимому, встроен). Может ли кто-нибудь превратить приведенное выше в рабочий пример, который гарантированно запустится, если я просто вставлю его в оболочку?

0 ответов

Другие вопросы по тегам