如here所述,整个docker映像tarball被创建为按需的隐式输出。
但是,按需表示什么意思?我该如何通知生成该生成?
此处似乎缺少文档。
答案 0 :(得分:0)
通常,Docker映像以复杂的格式存储在Docker守护程序的专用文件系统空间中。在通常的使用中,您将使用docker build
,pull
,run
和rmi
与图像进行交互,但是这些都不以生成可执行文件的方式生成文件会。
还有一种替代方法,可以使用docker save
将图像导出到tar文件,然后使用docker load
来重新加载图像来管理图像。这很尴尬,并且有很多缺点,您几乎总是想设置一个注册表或使用托管的注册表(如Docker Hub),只要有此选项即可。
我对链接到的文档的了解是,默认情况下,链接到的Bazel任务将仅运行docker build
;但是,如果下游的某个文件需要image.tar
文件,它也会运行docker save
。通常不需要它,Bazel不会运行它。
答案 1 :(得分:0)
您可以显式指定“ image.tar”目标名称以进行构建;例如,如果您的container_image
目标在my_image
中被命名为//foo
,则将以淡褐色显示tar存档:
bazel run //foo:my_image.tar