2017-02-17 2 views
2

В OpenShift 3.3 я пытаюсь создать Job с помощью инструмента командной строки oc (который, по-видимому, не имеет поддержки на основе аргументов для создания Job), но у меня возникли проблемы с пониманием как использовать поток изображений существующего приложения. Например, когда мое приложение выполняет сборку S2I, оно подталкивает к потоку изображения app:latest. Я хочу, чтобы задание, которое я пытаюсь создать, запускалось в контексте нового типа приложения, использующего поток изображений моего приложения. Я подготовил тестовое задание, используя этот YAML:Как указать изображение OpenShift при создании задания

--- 
apiVersion: batch/v1 
kind: Job 
metadata: 
    name: myapp-test-job 
spec: 
    template: 
    spec: 
     restartPolicy: Never 
     activeDeadlineSeconds: 30 
     containers: 
     - name: myapp 
     image: myapp:latest 
     command: ["echo", "hello world"] 

Когда я создаю выше задания, используя oc create -f job.yaml, OpenShift не в состоянии тянуть myapp:latest. Если я изменю image: myapp:latest на image: 172.30.194.141:5000/myapp/myapp:latest (и при этом укажите хост и порт моего внутреннего реестра Docker моего экземпляра OpenShift), это работает, но я бы не стал его указывать, так как это похоже на введение зависимости от детали реализации OpenShift. Есть ли способ заставить OpenShift Jobs использовать изображения из существующего приложения, не зависимо от таких деталей?

documentation показывает image: perl, но неясно, как использовать грузчик изображение построен и хранящееся в OpenShift.

ответ

Смежные вопросы