container_image полное изображение докера tarball - PullRequest
1 голос
/ 16 октября 2019

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

Ответы [ 2 ]

0 голосов
/ 16 октября 2019

Вы можете явно указать имя цели «image.tar» для его построения;например, если ваша цель container_image имеет имя my_image в //foo, это приведет к созданию архива tar в bazel-out:

bazel run //foo:my_image.tar
0 голосов
/ 16 октября 2019

Обычно образ Docker хранится в пространстве частной файловой системы демона Docker в сложном формате. При обычном использовании вы будете использовать docker build, pull, run и rmi для взаимодействия с изображением, но ни один из них не приведет к созданию файла, как при создании исполняемого файла.

Существует альтернативный путь для управления изображениями с помощью docker save для экспорта изображения в файл tar и docker load для его перезагрузки. Это неудобно и имеет ряд недостатков, и вы почти всегда хотите настроить реестр или использовать размещенный реестр, такой как Docker Hub, с указанным параметром.

Я прочитал документацию, на которую вы ссылаетесь, что Bazelзадание, на которое вы ссылаетесь по умолчанию, просто запустит docker build;но если что-то ниже по потоку требует файл image.tar, он также будет запускать docker save. Обычно это не нужно, и Базель не запустит его, если это не так.

...