К каким каталогам контейнеры, запущенные в Azure Экземплярах Контейнеров, имеют доступ для чтения? - PullRequest
0 голосов
/ 21 февраля 2020

Моя цель - запустить скрипт python, который передается в контейнер docker, содержащий исходный код и зависимости. Это должно быть выполнено с использованием Azure экземпляров контейнера (ACI). На моей домашней машине я могу сделать это в docker (установив ENTRYPOINT или CMD в «python») с помощью

docker run myimage "myscript.py"

, при условии, что я раскручиваю контейнер из каталога, содержащего myscript.py.

После некоторого прочтения я подумал, что аналогичного можно добиться на azure, используя az container create --command-line, как указано здесь . Создание моего контейнера будет выглядеть примерно так:

az container create \
  --resource-group myResourceGroup \
  --name my-container \
  --image myimage:latest \
  --restart-policy Never \
  --command-line "python 'myscript.py'"

Однако контейнер не может найти myscript.py. Я использую Azure Cloud Shell. Я попытался раскрутить контейнер из каталога, содержащего myscript.py, и я также попытался добавить общий файловый ресурс с myscript.py внутри. В обоих случаях я получаю сообщение об ошибке

python3: невозможно открыть файл 'myscript.py': [Errno 2] Нет такого файла или каталога

I мне кажется, я просто не понимаю контейнеры и как они взаимодействуют со структурой каталогов хоста на azure. Кто-нибудь может дать какие-то предложения или ссылки на ресурсы?

1 Ответ

0 голосов
/ 21 февраля 2020

при условии, что я раскручиваю контейнер из каталога, содержащего myscript.py.

Откуда вы запускаете команду для запуска экземпляра контейнера, не имеет значения вообще. Файлы должны присутствовать внутри вашего изображения. Или вы также можете смонтировать в него хранилище и прочитать оттуда.

...