gpt4 book ai didi

ruby-on-rails - 在 Minikube 中调试 rails 应用程序

转载 作者:行者123 更新时间:2023-12-02 11:32:37 25 4
gpt4 key购买 nike

我在本地机器上的 minikube 集群中运行 rails 服务。我喜欢在我的代码中设置断点以便与流程进行交互。这在 Minikube 中不起作用。我可以连接到运行我的 rails 容器的 pod 并点击 binding.pr我的代码中的语句,而不是获得交互式断点,我只是看到 pry 尝试创建断点,但最终直接通过它。任何人都知道如何让这个工作?我猜部署的 pod 本身不是交互式的。

最佳答案

您正在尝试对您的应用程序进行交互式访问。

你的问题是由于k8s没有分配TTY
默认情况下容器的标准输入缓冲区。

我已经复制了您的问题并找到了解决方案。

要获得交互式断点,您必须向部署 yaml 添加 2 个标志以指示您需要交互式 session :

   stdin: true
tty: true

下面是一个部署示例:
   apiVersion: apps/v1
kind: Deployment
metadata:
labels:
run: test
name: test
spec:
selector:
matchLabels:
run: test
template:
metadata:
labels:
run: test
spec:
containers:
- image: test
name: test
stdin: true
tty: true

您可以找到有关它的更多信息 here .

记住在附加到 pod 时使用 -it 选项,如下所示:
   kubectl attach -it <pod_name>

如果这有帮助,请告诉我。

关于ruby-on-rails - 在 Minikube 中调试 rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58456820/

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