Мне передали следующее, которое выполняет пробный запуск создания секрета кубернетов из файла appsettings.json
, который затем передается по конвейеру к кубернетам применяются
. Я думаю, что -f
примет имя файла созданного секрета - пробного прогона
и будет использовать его при применении секрета, но мне интересно, если конечный -
имеет какое-либо значение, или это просто опечатка?
kubectl create secret generic test --from-file = appsettings.json --dry-run -oyaml | kubectl apply -f -
Символ -
можно понимать как заполнитель для вывода команды, которая передается по конвейеру (с использованием символа |
). Используя его, мы очень конкретно указываем следующую команду (к которой выводится по конвейеру), куда должен быть помещен стандартный вывод первой команды (результат выполнения), другими словами , как он должен быть взят или проанализирован .
Таким образом, вместо того, чтобы передавать результат:
kubectl create secret generic test --from-file=appsettings.json --dry-run -oyaml
(который оказывается yaml-манифестом)
напрямую в:
kubectl apply -f
, который не знает, что делать с таким вводом (поскольку он ожидает файл после флага -f
), мы очень точно указываем, где он подходит:
The ] -
- параметр для параметра -f
, что означает принятие ввода из стандартного ввода вместо именованного файла. Сотни команд UNIX / Linux имеют такие параметры.