我已经从Helm Chart中的Apache Superset安装了Google Cloud Kubernetes集群。我需要pip install
安装Helm Chart时未安装的软件包。如果我这样连接到Kubernetes bash shell:
kubectl exec -it superset-4934njn23-nsnjd /bin/bash
里面没有可用的python,没有pip和apt-get找不到大多数软件包。
我了解到,在容器安装过程中,软件包会在Dockerfile中列出,我想我需要派生Docker容器,修改Dockerfile,将容器注册到容器注册表中,并制作一个新的Helm Chart来运行这个容器。
但是对于一个简单的pip install
来说,这一切似乎太复杂了,有没有更简单的方法来做到这一点?
链接:
Docker- https://hub.docker.com/r/amancevice/superset/
头盔图表-https://github.com/helm/charts/tree/master/stable/superset
答案 0 :(得分:2)
Docker文件似乎正在安装python3软件包。 尝试使用“ python3”或“ pip3”而不是“ python” /“ pip”
答案 1 :(得分:2)
如@Murli所述,您应该使用pip3
。但是,您应该记住一件事,helm
是用于管理k8的,也就是说,进入集群的内容应该是可追溯的。因此,我向您推荐以下内容:
$ helm get stable/superset
修改values.yaml。就我而言,我在pip3中添加了jenkins-job-builder:
initFile: |-
pip3 install jenkins-job-builder
/usr/local/bin/superset-init --username admin --firstname admin --lastname user --email admin@fab.org --password admin
superset runserver
,然后将values.yaml
传递到helm install
。
$ helm install --values=values.yaml stable/superset
就这样。
$ kubectl exec -it doltish-gopher-superset-696448b777-8b9c6 which jenkins-jobs
/usr/local/bin/jenkins-jobs
$
答案 2 :(得分:1)
做一个容器,多做一些开发工作,更少的寻呼机警报