При использовании kubectl run -ti
с интерактивным терминалом я хотел бы иметь возможность передать несколько команд в команду kubectl run
, которая будет выполняться до появления интерактивного терминала, например такие команды, как apt install zip
. Таким образом, мне не нужно ждать, пока появится интерактивный терминал, а затем запускать эти общие команды. Есть ли способ сделать это?
Спасибо
Спасибо. Это вариант, который я использую. Однако я хотел бы посмотреть, возможно ли это непосредственно из команды запуска kubectl.
Вы можете использовать exec
оболочки, чтобы передать управление от вашего первоначального «внешнего» bash, отвечающего за выполнение необходимых шагов инициализации, на новый (свежий в том смысле, что он не имеет -c
и может быть оболочкой входа в систему). ), который запускается после ваших предварительных шагов:
kubectl run sample -it --image=ubuntu:20.04 -- \
bash -c "apt update; apt install -y zip; exec bash -il"
Запустите образ, в котором уже есть нужные вам инструменты