Создание базового изображения для py3_image в bazel - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь создать свой собственный базовый образ для кода Python 3 на bazel.Допустим, у меня есть фиктивный файл BUILD:

load("@io_bazel_rules_docker//python3:image.bzl", "py3_image")

py3_image(
    name = "helloimage",
    srcs = ["hello.py"],
    main = "hello.py",
)

Будет загружено правило py3_image при попытке доступа к базовому контейнеру с именем @py3_image_base//image.Я могу поместить в файл WORKSPACE что-то вроде следующих строк:

container_pull(
    name = "py3_image_base",
    registry ="index.docker.io",
    repository = "python/3.6-alpine",
    tag = "3.6.8-alpine3.9",
)

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

docker save python:3.6-alpine > /shared/nfs/mount/base.tar

, а затем каким-то образом container_pull изображение из этого места.Однако, похоже, что container_pull не позволяет мне импортировать что-либо из файла, только реестр (поскольку он не создает изображения).Теперь container_image поддерживает аргумент tars, но кажется, что его нельзя использовать в файле WORKSPACE.У кого-нибудь есть идея, как заставить @py3_image_base//image указать на изображение докера, созданное из тар-шара /shared/nfs/mount/base.tar?

...