编辑
2023-04-27
DevOps
00

我自己家的用了 nginx proxy manager 作为提供服务的统一出口,因为没办法用 443 端口,所以用的 8443,也没改 nginx proxy manager 的默认端口,直接路由器端口转发到了 8443 上,这时候其实 Host 的请求头是错误的。

具体而言会导致我用最新版本的 code-serverorigin 校验失败,报错 1006,因为 host 端口号不对。

编辑
2023-04-25
DevOps
00

平时有时候会突然想写一个小网页,或者部署一个服务到集群里,但添加解析让我很苦恼。我需要手动去 Dnspod 扫码登录,然后点击我的域名,然后点添加,一套下来很繁琐。

能不能让 k8s 的 ingress 有变化的时候,自己添加域名解析啊?这样配合 Traefik Ingress 来自动签发证书,我就能解放很大一部分的双手了。

(实际上我现在使用 Rancher 来管理我的几个集群,如果上面的能实现,那我完全可以图形化的页面里点点点,一套服务就创建好了,想想就很好)

思路

我没找到现成的工具,那就自己写一个吧,大概的需求和思路是这样的:

  1. 监控 K8S ingress 的变化
  2. 找到对应 ingress 对应的 service
  3. 找到对一个 service 的 pod,看一下 pod 在哪个节点上
  4. 给对应的节点和 ingress 对应的域名增加一条解析
编辑
2023-04-25
DevOps
00

我自己的集群一直都用的 traefik ingress controller,感觉挺好用的, 还能自动签发管理 https 证书
然后我一般都用 rancher 图形化的管理我的服务,很少手动去写 yaml 了,所以 ingress 我也是直接图形化创建的,这时候想用中间件,就需要用 ingress 注解的方式了。

注解规则

比如我有一条 ip-whitelist 的中间件,在 default 命名空间,那就这么写 ingress 注解:

traefik.ingress.kubernetes.io/router.middlewares: "default-ip-whitelist@kubernetescrd"

没错,就是 <命名空间>-<中间件名字>@kubernetescrd

编辑
2023-03-21
前端技术
00

流水线功能

自从 VanBlog v0.49.0 后,增加了流水线功能。

流水线功能允许用户在自定义的事件发生后执行任意的自定义 js 代码,甚至改写事件的结果。

我们可以利用这个功能,在每次文章发布前,自动追加一些自我介绍信息,或者是推荐文章。在这个例子中,我们使用流水线功能,在文章末尾自动追加下面的内容:

Powered By VanBlog

编辑
2022-09-02
前端技术
00

v0.29.0 后,VanBlog 支持了客制化功能,可自定义 HTML、CSS 或 JS 代码。利用这个功能可以实现很多有意思的东西,比如加一个 Sakana! Widget 挂件。

效果 C#

image.png