发布于 2021-10-22 15:06:44
您可以使用docker image ls获取本地构建的Docker镜像列表。请注意,"image“是VM的模板。
要实例化VM并将其外壳到其中,可以使用诸如docker run -t --entrypoint bash tensorflow/tfx之类的命令。这将基于tensorflow/tfx映像启动一个临时VM。
默认情况下,Docker假定您希望在本地计算机上存储该镜像的最新版本,即列表中的tensorflow/tfx:latest。如果您想更改,可以通过名称或哈希引用特定的镜像版本,例如docker run -t --entrypoint bash tensorflow/tfx:1.0.0或docker run -t --entrypoint bash fe507176d0e6。我通常首先使用docker image ls命令,然后剪切并粘贴散列,这样即使我后来编辑了相关的Dockerfile,我的注释也可以具体说明我引用的是哪个构建。
另请注意,您在该VM中所做的更改将不会保存。一旦您退出bash shell,它就会消失。shell对于检查构造的镜像的状态和文件结构很有用。如果您想要编辑镜像本身,请使用Dockerfile。编译Dockerfile时,Dockerfile的每一行都会创建一个新的镜像。如果您知道Dockerfile文件的第5行和第10行之间出现了错误,那么您可以依次使用shell命令(使用我上面给出的docker run命令)来查看哪里出了问题。有点乏味,但它是有效的。
还要注意,docker run是,而不是运行TFX管道的等价物。对于后者,您需要查看TFX CLI commands或以其他方式编译管道-并可能将其上传到外部Kubeflow服务器。
还要注意的是,Docker镜像只是TFX管道的一部分的起点。一个完整的管道需要你指定你想要的组件,一个更完整的Dockerfile,等等。这是一个巨大的话题,而且国际海事组织,existing documentation留下了很多需要改进的地方。您创建的Dockerfile描述了映像,该映像将分发给处理整个管道的每个工作进程。它是为机器指定依赖项、必要文件和其他自定义设置的地方。大多数与ML相关的问题都在其他文件中处理。
https://stackoverflow.com/questions/68429004
复制相似问题