(可选)尝试使用 K8s Helm
介绍
现在我们展示如何使用 Helm 在 Kubernetes 上部署 Casdoor,以便于管理和扩展。
先决条件
- 一个正在运行的 Kubernetes 集群
- 已安装 Helm v3
安装步骤
步骤 1:安装 Casdoor 图表
Install the Casdoor chart:
helm install casdoor oci://registry-1.docker.io/casbin/casdoor-helm-charts --version v1.702.0
步骤 2:访问 Casdoor
一旦安装,您可以通过 Kubernetes 集群提供的服务 URL 访问 Casdoor。
定制和配置
通过修改 Helm 图表值来定制您的 Casdoor 安装。 有关详细选项,请参考图表中的 values.yaml 文件。 可以配置以下参数。
参数 | 描述 | 默认值 |
---|---|---|
replicaCount | 运行 Casdoor 应用的副本数量。 | 1 |
image.repository | Casdoor Docker 图像的仓库。 | casbin |
image.name | Casdoor Docker 图像的名称。 | casdoor |
image.pullPolicy | Casdoor Docker 图像的拉取策略。 | IfNotPresent |
image.tag | Casdoor Docker 图像的标签。 | "" |
config | Casdoor 应用的配置设置。 | 参见 config 字段 |
database.driver | 要使用的数据库驱动程序(支持 mysql,postgres,cockroachdb,sqlite3)。 | sqlite3 |
database.user | 数据库用户名。 | "" |
database.password | 数据库密码。 | "" |
database.host | 数据库主机。 | "" |
database.port | 数据库端口。 | "" |
database.databaseName | Casdoor 使用的数据库名称。 | casdoor |
database.sslMode | 数据库连接的 SSL 模式。 | disable |
service.type | 为 Casdoor 创建的 Kubernetes 服务的类型(ClusterIP,NodePort,LoadBalancer 等)。 | ClusterIP |
service.port | Casdoor 服务的端口号。 | 8000 |
ingress.enabled | 是否启用 Casdoor 的 Ingress。 | false |
ingress.annotations | Ingress 资源的注解。 | {} |
ingress.hosts | Ingress 资源的主机名。 | [] |
resources | Casdoor 容器的资源请求和限制。 | {} |
autoscaling.enabled | 是否启用 Casdoor 的水平 Pod 自动扩展。 | false |
autoscaling.minReplicas | 水平 Pod 自动扩展的最小副本数。 | 1 |
autoscaling.maxReplicas | 水平 Pod 自动扩展的最大副本数。 | 100 |
autoscaling.targetCPUUtilizationPercentage | 水平 Pod 自动扩展的目标 CPU 利用率百分比。 | 80 |
nodeSelector | Pod 分配的节点标签。 | {} |
tolerations | Pod 分配的容忍标签。 | [] |
affinity | Pod 分配的亲和性设置。 | {} |
extraContainersEnabled | 是否启用额外的边车容器。 | false |
extraContainers | 额外的边车容器。 | "" |
extraVolumeMounts | Casdoor 容器的额外卷挂载。 | [] |
extraVolumes | Casdoor 容器的额外卷。 | [] |
envFromSecret | 从 secret 提供环境变量。 | [{name:"",secretName:"",key:""}] |
envFromConfigmap | 从 configmap 提供环境变量。 | [{name:"",configmapName:"",key:""}] |
envFrom | 从整个 secret 或 configmap 提供环境变量。 | `[{name:"",type:"configmap \ |
管理部署
升级您的 Casdoor 部署:
helm upgrade casdoor casdoor/casdoor-helm-charts
卸载 Casdoor:
helm delete casdoor
有关进一步的管理和定制,请参考 Helm 和 Kubernetes 的文档。
结论
使用 Helm 在 Kubernetes 上部署 Casdoor 简化了在 Kubernetes 环境中管理和扩展您的身份验证服务。