自架 Whoogle: whoogle.iter.tw
作者:gugod 發佈於:看到 gslin 長輩自架了 whoogle 服務 來讓大家用,就稍微跟風研究了一下。發現 whoole 作者有提供 docker image 到公開的 docker registry 上。又,這軟體本身就是個 proxy,不必維護任何狀態,是個十分適合用 kubernetes 來執行的軟體。
於是我也自架了一個 whoogle 服務給大家玩玩: https://whoogle.iter.tw/
這服務的 uptime 不保證、access log 不留存。玩膩了就會消失。不另公告。
與 gslin 的不同,我的這伺服器架構並不是放在 gslin 的客廳伺服器上跑,而是在 linode 上的便宜小 kubernetes cluster,機器規格顯然是比 gslin 的客廳伺服器差的,或許,偶爾會自主放飛也說不定。另外,由於機房是選在日本的,所以在搜尋結果中會出現較多日文網頁。或許可以拿來比較比較。
在部署這服務時用上的宣言如下,共有 Service、Deployment、Ingress 三段。算是給自己留個記錄。
apiVersion: v1
kind: Service
metadata:
name: whoogle-service
spec:
selector:
app: whoogle
ports:
- protocol: TCP
port: 80
targetPort: 5000
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: whoogle-deployment
labels:
app: whoogle
spec:
replicas: 1
selector:
matchLabels:
app: whoogle
template:
metadata:
labels:
app: whoogle
spec:
containers:
- name: whoogle
image: benbusby/whoogle-search:latest
ports:
- containerPort: 5000
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: iter-tw-ingress
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
tls:
- hosts:
- whoogle.iter.tw
secretName: tls-iter-tw
rules:
- host: whoogle.iter.tw
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: whoogle-service
port:
number: 80