首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Kubernetes和Ambassador为静态网站提供服务

使用Kubernetes和Ambassador为静态网站提供服务
EN

Stack Overflow用户
提问于 2019-01-26 02:43:27
回答 1查看 659关注 0票数 0

我有一个静态网站包,我想在我的集群上提供服务。捆绑包存储在google云存储桶中,这让我认为我实际上可能不需要单独的“服务器”来返回文件。

我已经能够让Python-Flask引用存储桶中的文件,但我似乎想不出如何让大使也这样做。我可以做一些事情,比如将包添加到nginx实例中,但我不想将JS包构建到任何docker镜像中,这样我就可以进行快速更新。

我不知道如何设置大使路由来执行以下操作:

如果用户转到

https://my-website.com/

他们从我的Google Bucket my-bucket/index.html获取index.html服务

当静态在内部引用一个文件(/ index.html /js/main.js)时,大使提供在my-bucket/static/js/main.js找到的文件

我尝试过这样设置一个服务:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  annotations:
    getambassador.io/config: |
      ---
      apiVersion: ambassador/v0
      kind: Mapping
      name: website_mapping
      prefix: /website/
      service: https://my-bucket-url/index.html
  name: website-service
  labels:
    app: website-service
spec:
  ports:
    - port: 80
      targetPort: 80
      name: http-website
  selector:
    app: website

但是导航到my-website.com/website/只得到一个503错误,控制台报告“纯文本文档的编码字符没有声明”。

我觉得我搞错了。我可以像这样直接使用Ambassador提供服务吗,还是我真的需要像nginx这样的东西?

EN

回答 1

Stack Overflow用户

发布于 2019-03-28 00:36:07

大使实际上不是一个web服务器(正如Laszlo Valko指出的那样)。它需要将您的请求代理到某个其他web服务器才能正常工作--当然可以是Flask (实际上,大使诊断服务是在启动时启动的一个Flask应用程序),但它需要在某个地方运行。:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54371155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档