Как построить образ для конвейера KubeFlow? - PullRequest
0 голосов
/ 03 февраля 2020

Я недавно узнал о kubeflow и конвейере kubeflow, но мне не ясно, как создать образ из моей программы python.

Давайте предположим, что у меня есть простая функция python, которая обрезает images:

class Image_Proc:
    def crop_image(self, image, start_pixel, end_pixel):
        # crop
        return cropped_image

Как мне поместить это в контейнер и использовать в конвейере KubeFlow? Нужно ли мне оборачивать его в API (например, с Flask) или мне нужно подключиться к какому-либо посреднику мультимедиа / данных?

Как конвейер KubeFlow отправляет входные данные в этот код и передает выходные данные этого код для следующего шага?

1 Ответ

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

Как правило, вы можете выполнить шаги, предусмотренные Docker здесь , чтобы создать Docker образ и опубликовать sh в Docker концентратор (или вы можете создать свой собственный docker реестр, но я думаю, что это может быть слишком много работы для начинающего). Примерно перечислите шаги:

  1. Создание Dockerfile. В вашем Dockerfile просто укажите несколько вещей: базовый образ (для вашего случая просто используйте python image from Docker), рабочий каталог и какие команды будут выполняться при запуске этого образа
  2. Запуск вашего образа локально чтобы убедиться, что он работает должным образом (сначала установите docker, если у вас его нет), а затем pu sh до Docker Hub
  3. После публикации у вас будет URL-адрес изображения после публикации на Docker Концентратор, затем используйте этот URL при создании конвейеров в Kubeflow.

Также вы можете прочитать это do c, чтобы узнать, как создавать конвейеры (конвейер Kubeflow просто ar go рабочий процесс). Для вашего случая просто заполните inputs и / или outputs разделы нужного вам шага в файле YAML конвейера.

...