init: Alfred preferences

This commit is contained in:
2026-03-26 09:22:38 +08:00
commit 3cad72b72c
13215 changed files with 108280 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 5. 設定檔 (ConfigMap) ---\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: my-app-config # <--- 名稱\n namespace: default\ndata:\n # [方式一] Key-Value 環境變數\n LOG_LEVEL: \"info\"\n APP_MODE: \"production\"\n\n # [方式二] 整個設定檔塞進去 (例如 Nginx 設定)\n site.conf: |\n server {\n listen 80;\n server_name localhost;\n location \/ {\n root \/var\/www\/html;\n }\n }",
"uid" : "13F3034F-576A-4BC2-932A-00A57CDF6E59",
"name" : "ConfigMap YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 8. 定時任務 (CronJob) ---\napiVersion: batch\/v1\nkind: CronJob\nmetadata:\n name: my-backup-job # <--- 任務名稱\n namespace: default\nspec:\n schedule: \"0 3 * * *\" # <--- Crontab 語法 (範例:每天凌晨 3 點)\n timeZone: \"Asia\/Taipei\" # <--- 指定時區 (K8s 1.25+ 支援,強烈建議設定)\n jobTemplate:\n spec:\n template:\n spec:\n containers:\n - name: backup-tool\n image: busybox # <--- 執行任務的 Image\n command:\n - \/bin\/sh\n - -c\n - \"echo 'Start backup...'; sleep 10; echo 'Done!'\"\n restartPolicy: OnFailure # <--- 失敗時才重啟 (不能設 Always)",
"uid" : "8B13219D-F105-4292-BBEC-5382403BE415",
"name" : "CronJob YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 2. 部署 (Deployment) ---\napiVersion: apps\/v1\nkind: Deployment\nmetadata:\n name: my-app-deploy # <--- Deployment 名稱\n namespace: default # <--- 記得跟 PVC 在同一個 Namespace\n labels:\n app: my-app\nspec:\n replicas: 1 # <--- 副本數量 (要跑幾個 Pod)\n selector:\n matchLabels:\n app: my-app # <--- 重要:必須跟下方的 template labels 一樣\n template:\n metadata:\n labels:\n app: my-app # <--- Pod 的標籤\n spec:\n containers:\n - name: my-app-container\n image: nginx:latest # <--- 你的 Image 名稱與 Tag\n ports:\n - containerPort: 80 # <--- 容器內部服務的 Port\n \n # [環境變數範例] (若不需要可刪除)\n env:\n - name: TZ\n value: \"Asia\/Taipei\"\n\n # [資源限制建議] (建議設定,避免吃光主機資源)\n resources:\n requests:\n cpu: \"100m\"\n memory: \"128Mi\"\n limits:\n cpu: \"500m\"\n memory: \"512Mi\"\n\n # [掛載設定] 將儲存空間掛進容器\n volumeMounts:\n - name: data-storage # 對應下方的 volumes name\n mountPath: \/var\/www\/html # <--- 容器內的路徑 (資料要存在哪)\n\n # [儲存卷來源] 連結剛才建立的 PVC\n volumes:\n - name: data-storage # 自訂名稱,給上方 volumeMounts 引用\n persistentVolumeClaim:\n claimName: my-app-pvc # <--- 這裡填你上一步建立的 PVC 名稱",
"uid" : "62D03227-07E1-4CE8-AA26-924FD91C5526",
"name" : "Deployment YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 7. 自動擴縮 (HPA) ---\napiVersion: autoscaling\/v2\nkind: HorizontalPodAutoscaler\nmetadata:\n name: my-app-hpa # <--- HPA 名稱\n namespace: default\nspec:\n scaleTargetRef: # <--- 指定要監控哪個目標\n apiVersion: apps\/v1\n kind: Deployment\n name: my-app-deploy # <--- 必須對應你的 Deployment 名稱\n minReplicas: 2 # <--- 離峰時,最少要保留幾隻 Pod\n maxReplicas: 10 # <--- 尖峰時,最多擴充到幾隻 (避免資源被吃光)\n metrics:\n - type: Resource\n resource:\n name: cpu\n target:\n type: Utilization\n averageUtilization: 70 # <--- 當 CPU 平均使用率超過 70% 就加 Pod",
"uid" : "A5840CCA-A7C4-45E6-AA9B-99716A72ED9B",
"name" : "HPA YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 4. 路由 (Ingress) ---\napiVersion: networking.k8s.io\/v1\nkind: Ingress\nmetadata:\n name: my-app-ingress # <--- Ingress 名稱\n namespace: default # <--- 必須與 Service 同 Namespace\n annotations:\n # [常見設定] (視你的 Ingress Controller 而定,這裡是 Nginx 範例)\n # nginx.ingress.kubernetes.io\/proxy-body-size: \"100m\" # 修改上傳限制\n # cert-manager.io\/cluster-issuer: \"letsencrypt-prod\" # 若有裝 Cert-Manager 自動發憑證,請取消註解\nspec:\n ingressClassName: nginx # <--- 指定控制器類別 (例如: nginx, traefik, public)\n \n # [HTTPS 設定] (若暫時只跑 HTTP這區塊可先拿掉)\n tls:\n - hosts:\n - my-app.example.com # <--- 你的網域名稱\n secretName: my-app-tls # <--- 憑證存放在 Secret 的名稱 (Cert-Manager 會自動產生)\n\n rules:\n - host: my-app.example.com # <--- 你的網域名稱 (例如 app.192.168.1.10.nip.io)\n http:\n paths:\n - path: \/\n pathType: Prefix\n backend:\n service:\n name: my-app-service # <--- 指向剛才建立的 Service 名稱\n port:\n number: 80 # <--- 指向 Service 的 Port (不是 TargetPort)",
"uid" : "38424ADA-B229-4F0D-9D61-E0AF24BFB16C",
"name" : "Ingress YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 1. 儲存空間 (PVC) ---\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n name: my-app-pvc # <--- 請改成你的 PVC 名稱\n namespace: default # <--- 請確認 Namespace\n labels:\n app: my-app # (選填) 方便管理用的標籤\nspec:\n accessModes:\n - ReadWriteOnce # ReadWriteOnce (單節點讀寫,一般硬碟用)\n # ReadWriteMany (多節點共用,需 NFS\/Ceph 支援)\n resources:\n requests:\n storage: 10Gi # <--- 請設定你需要的大小\n storageClassName: \"\" # <--- 填入 StorageClass (如 longhorn, nfs-client)\n # 若留空 \"\" 或是拿掉這行,會使用 K8s 預設值",
"uid" : "B61A91DF-CE2D-4239-A2B4-5B6919A4DFBA",
"name" : "PVC YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 6. 機密資訊 (Secret) ---\napiVersion: v1\nkind: Secret\nmetadata:\n name: my-app-secret # <--- 名稱\n namespace: default\ntype: Opaque # 一般自定義資料用 Opaque\nstringData: # <--- 用 stringData 可以直接寫明文K8s 會自動幫你轉 Base64\n DB_PASSWORD: \"super_secure_password_123\"\n API_KEY: \"sk-xxxxxxxxxxxxxxxx\"",
"uid" : "0D656CA6-3DD1-4CE8-9C0E-D87A6449A8F1",
"name" : "Secret YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,8 @@
{
"alfredsnippet" : {
"snippet" : "# --- 3. 服務 (Service) ---\napiVersion: v1\nkind: Service\nmetadata:\n name: my-app-service # <--- Service 名稱 (叢集內可用此名稱當 DNS 連結)\n namespace: default # <--- 需與 Deployment 同 Namespace\n labels:\n app: my-app\nspec:\n selector:\n app: my-app # <--- 關鍵:必須跟 Deployment 的 labels 完全一樣,才能找到 Pod\n \n # [類型選擇]\n # ClusterIP: 預設值,僅限叢集內部存取 (若要搭配 Ingress 請選這個)\n # NodePort: 會開一個 port (30000-32767) 讓外部用 NodeIP:Port 連線\n type: ClusterIP # <--- 依需求修改 (ClusterIP \/ NodePort)\n\n ports:\n - protocol: TCP\n name: http\n port: 80 # <--- Service 本身對外暴露的 Port\n targetPort: 80 # <--- 你的容器 (Container) 實際在聽的 Port\n # nodePort: 30080 # <--- 若 type 是 NodePort可在此指定固定 Port",
"uid" : "7412540F-364A-4F5C-B3EA-9581FF4CAB14",
"name" : "Service YAML 範本",
"keyword" : ""
}
}

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>snippetkeywordprefix</key>
<string></string>
<key>snippetkeywordsuffix</key>
<string></string>
</dict>
</plist>