2

我正在编写一个 bash 文件,我在其中编写了一些脚本来在 Kubernetes 集群(minikube)中安装大三角帆,一切正常,大三角帆现在已安装,但是当我进入 halyard 并想从我的 bash 文件中运行几个脚本然后它正在进入我的 halyard 容器但没有执行下一个命令,因为我不知道如何运行它下面的多个命令。我也尝试了 \ 和 && 但没有工作。这些是我的命令

kubectl exec --namespace spinnaker -it spinnaker-spinnaker-halyard-0 bash 
hal config features edit --artifacts true 
hal config artifact github enable 
GITHUB_ACCOUNT_NAME=github_user 
hal config artifact github account add ${GITHUB_ACCOUNT_NAME} \
  --token
hal deploy apply

如果我尝试kubectl exec --namespace spinnaker -it spinnaker-spinnaker-halyard-0 bash \然后它正在运行下一个命令(hal config features edit --artifacts true)但它显示错误“--unknown flag --artifacts”。

注意:如果我在 CLI 中手动运行这些命令,那么一切正常,但我想从我的 bash 文件中运行这些命令。

4

1 回答 1

0

我假设您要运行的命令未存储在容器的文件中。如果您将这些命令添加到脚本文件(例如config-halyard.sh),并将持久卷安装到 Halyard 容器(包含此脚本),您应该能够使用以下命令从容器外部执行它:

kubectl exec --namespace spinnaker -it spinnaker-spinnaker-halyard-0 /bin/bash config-halyard.sh

假设脚本位于容器的根目录中

于 2019-12-17T21:28:11.517 回答