gpt4 book ai didi

kubernetes - 如何在不创建 Deployment 或 Job 的情况下在 Kubernetes 中运行容器?

转载 作者:行者123 更新时间:2023-12-01 10:34:56 24 4
gpt4 key购买 nike

我正在尝试在 Kubernetes 中运行一个交互式 Pod(容器),它不会创建作业或部署并在完成后自行删除。

容器的目的是为我们的开发人员提供一种访问我们的数据库的简单方法,该数据库没有公共(public) IP 地址。

目前,我们正在使用这个命令:

kubectl run -i --tty proxy-pgclient --image=private-registry.com/pgclient --restart=Never --env="PGPASSWORD=foobar" -- psql -h dbhost.local -p 5432 -U pg_admin -W postgres

这在您第一次运行时有效,但是,在退出 session 后,如果您尝试再次运行以上以再次连接到数据库,我们会得到:
Error from server: jobs.extensions "proxy-pgclient" already exists

强制开发人员删除作业:
kubectl delete job proxy-pgclient

在他们可以运行命令并再次连接之前。

有没有什么方法可以在 Kubernetes 中启动交互式容器(Pod)而不创建 Job 或 Deployment 对象并在交互式 session 关闭时删除该容器?

最佳答案

在原始命令中添加“--rm”标志会导致在交互 session 完成时删除作业(和 Pod),这就是我所追求的。然后命令变为:

kubectl run -i --tty --rm proxy-pgclient --image=private-registry.com/pgclient --restart=Never --env="PGPASSWORD=foobar" -- psql -h dbhost.local -p 5432 -U pg_admin -W postgres

关于kubernetes - 如何在不创建 Deployment 或 Job 的情况下在 Kubernetes 中运行容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37382411/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com