埃奇·斯塔克大使:正在处理样本项目,但不是我的项目



我正在尝试将Ambassador配置为本地kubernates集群中的API网关。

安装:

  1. 安装自https://www.getambassador.io/docs/latest/tutorials/getting-started/windows和Kubernetes部分
  2. 可以使用>edgectl login --namespace=ambassador localhost登录并查看仪表板
  3. 使用他们提供的示例项目进行配置https://www.getambassador.io/docs/latest/tutorials/quickstart-demo/

这是用于部署演示应用的YML文件

apiVersion: apps/v1
kind: Deployment
metadata:
name: quote
namespace: ambassador
spec:
replicas: 1
selector:
matchLabels:
app: quote
strategy:
type: RollingUpdate
template:
metadata:
labels:
app: quote
spec:
containers:
- name: backend
image: docker.io/datawire/quote:0.4.1
ports:
- name: http
containerPort: 8080

一切都按预期进行。现在我正在尝试用我的项目进行配置。但它不起作用。

因此,对于更简单的情况,在保留每个配置作为Ambassador的演示的情况下,我只是将image: docker.io/datawire/quote:0.4.1修改为image: angularapp:latest,其中这是Angular 10项目的docker映像。

但我得到了upstream connect error or disconnect/reset before headers. reset reason: connection failure

我花了一天时间解决这个问题。我从docker桌面应用程序恢复了我的Kubernates,并进行了重新配置,但运气不佳。

当映射有效,但由于某种原因无法访问它所指向的服务时,就会发生此错误。部署是否正在实际运行(kubectl get deploy -A -o wide(?你的angular应用程序是否暴露了8080端口?8080是一个非常常见的kubernetes端口,但在前端开发领域并不常见。如果使用kubectl exec -it {{AMBASSADOR_POD}} -- shcurl http://quote是否返回预期输出?

相关内容

  • 没有找到相关文章

最新更新