我正在打包一个 Python 应用程序以在 Kubernetes 集群中使用。在代码库中存在此方法:
def get_pymongo_client(self):
username = test;
password = 'test';
url = ‘test
conn_str = "mongodb+srv://" + username + ":" + password + “/”+ url
return pymongo.MongoClient(conn_str)
我正在尝试保护用户名、密码和 URL 字段,以便它们在 src 代码中不可见。为此,我计划使用秘密。
URL https://kubernetes.io/docs/tasks/configmap-secret/managing-secret-using-kubectl/详细说明了如何创建密钥。但我不确定如何从 Python 应用程序中读取秘密。
我的应用程序的 .Dockerfile:
#https://docs.docker.com/language/python/build-images/
FROM python:3.8-slim-buster
WORKDIR /app
COPY requirements.txt requirements.txt
RUN pip3 install -r requirements.txt
COPY . .
CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"]
在 swarm 中阅读Python 烧瓶应用程序对 docker 机密的访问详细说明了 docker-compose 文件中机密的使用,Kubernetes 是否也需要这样做?为了从 Python src 代码文件中读取秘密参数,涉及哪些步骤?