ограничение команд в контейнере Kubernetes
Я хочу создать контейнер с аргументами командной строки --lines 56 -F.
вариант: Для этого я выполнил команду =>
k run app --image=lfccncf/arg-output --dry-run=client -o yaml > pod9.yaml
apiVersion: v1 kind: Pod metadata: labels: run: app name: app spec: containers: - image: lfccncf/arg-output name: app args: ["--lines","56","F"]
вариант: Вот второй вариант, как выполнить задачу.
kubectl run app1 --image=lfccncf/arg-output --dry-run=client --command ["--lines 56 -F"] -o yaml > pod9.yaml
У меня есть такое ограничение: "При создании своего pod'а вам не нужно указывать команду контейнера, только аргументы". Какой вариант правильный с указанным ограничением?
1 ответ
Номер 1, поскольку вы говорите, что вам не нужно указывать команду и предполагается, что она уже предварительно запечена в образ контейнера. --lines 56 -F
аргументы, а не "команда"
Цитата из документов:
Команда и аргументы, которые вы определяете в файле конфигурации, переопределяют команду и аргументы по умолчанию, предоставленные образом контейнера. Если вы определяете аргументы, но не определяете команду, команда по умолчанию используется с вашими новыми аргументами.
Аналогичный рабочий подход:
$ kubectl run app1 --image=lfccncf/arg-output --dry-run=client -o yaml -- --lines 56 -F > pod9.yaml