Files
ljwx-stock/k8s/secrets.sh
T
brunoandClaude e135a6396f feat: 实现完整的 CICD 流程
- 添加 Gitea Actions 工作流 (.gitea/workflows/)
  - cicd.yml: 完整 CICD 流程(构建、测试、推送、部署)
  - test.yml: 快速测试工作流

- 配置 Kubernetes 部署清单 (k8s/)
  - namespace.yaml: 创建 claude-stock namespace
  - configmap.yaml: 应用配置和 Ollama 连接配置
  - deployment.yaml: 后端和前端部署(支持 Node IP 连接 Ollama)
  - service.yaml: 服务定义、RBAC 和网络策略
  - ollama-bridge.yaml: 四种 K8s 与宿主 Ollama 通信方案
  - secrets.sh: 自动创建 K8s Secrets

- 部署脚本和工具
  - deploy-to-k8s.sh: 一键 K8s 部署脚本
  - verify-cicd.sh: CICD 环境验证脚本

- 文档
  - CICD_DEPLOYMENT_GUIDE.md: 完整部署指南(中文)
  - QUICK_START.md: 5 分钟快速启动指南(中文)

关键功能:
✅ Gitea Runners(Docker + K8s)
✅ Harbor 镜像仓库集成
✅ 自动化测试和安全扫描
✅ K8s 滚动更新和健康检查
✅ Ollama 集成(使用 Node IP 解决通信问题)
✅ 完整的部署后验证

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:56:09 +08:00

62 lines
1.9 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# 创建 Kubernetes Secrets 脚本
# 用于存储敏感信息
set -e
NAMESPACE="claude-stock"
echo "🔐 创建 Kubernetes Secrets..."
# 创建 namespace(如果不存在)
kubectl create namespace $NAMESPACE --dry-run=client -o yaml | kubectl apply -f -
# 1. Harbor 镜像仓库凭证
echo "📦 创建 Harbor 镜像拉取凭证..."
kubectl create secret docker-registry harbor-secret \
--docker-server=localhost:8443 \
--docker-username=admin \
--docker-password="${HARBOR_PASSWORD:-Harbor12345}" \
--docker-email=admin@example.com \
-n $NAMESPACE \
--dry-run=client -o yaml | kubectl apply -f -
# 2. Claude Stock 应用 Secrets
echo "🔑 创建应用秘钥..."
kubectl create secret generic claude-stock-secrets \
--from-literal=OPENROUTER_API_KEY="${OPENROUTER_API_KEY:-sk-or-v1-xxxxx}" \
--from-literal=TUSHARE_TOKEN="${TUSHARE_TOKEN:-xxxxx}" \
--from-literal=ALPHA_VANTAGE_API_KEY="${ALPHA_VANTAGE_API_KEY:-FFJVQK6LCQ5RSPNH}" \
-n $NAMESPACE \
--dry-run=client -o yaml | kubectl apply -f -
# 3. 数据库凭证
echo "🗄️ 创建数据库凭证..."
kubectl create secret generic db-credentials \
--from-literal=POSTGRES_USER="stockai" \
--from-literal=POSTGRES_PASSWORD="stockai2025" \
--from-literal=POSTGRES_DB="stock_ai" \
-n $NAMESPACE \
--dry-run=client -o yaml | kubectl apply -f -
# 4. Redis 凭证
echo "💾 创建 Redis 凭证..."
kubectl create secret generic redis-credentials \
--from-literal=REDIS_PASSWORD="redis2025" \
-n $NAMESPACE \
--dry-run=client -o yaml | kubectl apply -f -
# 5. Kubeconfig(用于 Gitea Actions 部署)
echo "🔐 创建 Kubeconfig Secret..."
if [ -f ~/.kube/config ]; then
kubectl create secret generic kubeconfig-secret \
--from-file=config=$HOME/.kube/config \
-n $NAMESPACE \
--dry-run=client -o yaml | kubectl apply -f -
fi
echo "✅ Secrets 创建完成!"
echo ""
echo "📋 创建的 Secrets:"
kubectl get secrets -n $NAMESPACE