运维部署
自托管 Infisical 平台部署与运维:用…
需要在自有环境部署并运维 Infisical 平台(Docker、Docker Compose 或 Kubernetes)时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
自托管 Infisical 平台部署与运特定
解决思路
- Docker 独立运行:拉取 `infisical/infisical:<version>`,设置环境变量,在 `8080` 端口运行。
- Docker Compose:使用仓库中的 `docker-compose.prod.yml`,并启动其中的 PostgreSQL 和 Redis 服务。
- Kubernetes:从 Cloudsmith registry 部署 Helm chart `infisical-standalone-postgres`,可选用托管数据库。
- 把 `ENCRYPTION_KEY` 当作关键密钥管理:它加密所有静态密钥,丢失后不可恢复;必须备份,并按 Infisical 的轮换流程谨慎轮换。
- 标准部署生成 `ENCRYPTION_KEY`:执行 `openssl rand -hex 16`,得到随机 16 字节十六进制字符串。
- FIPS 部署生成 `ENCRYPTION_KEY`:执行 `openssl rand -base64 32`,得到 256-bit base64 密钥。
- 设置必需的 `AUTH_SECRET`:用 `openssl rand -base64 32` 生成 32 字节 base64,用于会话和 JWT 签名,且必须在重启间保持稳定。
- 数据库只使用 PostgreSQL:使用 14+,Infisical 在 16 上经过大量测试。
- 升级 Infisical 前始终备份数据库;自 `v0.111.0-postgres` 起,schema migrations 会在启动时自动运行。
- 把 Redis 当作硬依赖配置:它不只是缓存,还承载后台任务队列、分布式锁、跨实例协调状态和限流计数器;必须设置 `REDIS_URL`、`REDIS_SENTINEL_HOSTS` 或 `REDIS_CLUSTER_HOSTS` 之一,否则实例无法启动;Redis 不可达时运行中实例会降级。
- Redis 版本使用 6.x 或 7.x,建议至少 6.2。
- Redis 拓扑支持 standalone、Sentinel 和 Cluster 三种。
- Redis 采用 active-passive;active-active 未测试,可能出现未记录行为。
- 将 Redis 淘汰策略设为 `noeviction`;这是必需项,不是调优建议,内存压力下淘汰键会静默丢弃排队工作。
- 启用 Redis 持久化(AOF,或至少 RDB 快照)并备份 Redis;待处理的 secret rotations、syncs 和 webhook deliveries 都在 Redis 中,空 Redis 重启会丢失这些工作。
- 给 Redis 与应用实例相同的可用性目标;未复制的 Redis 是整个部署的单点故障。
- 按无状态架构水平扩展:增加副本;所有状态都在 PostgreSQL 和 Redis;每个实例不超过 2–4 CPU 核心和 4–8 GB 内存;增加容器,而不是纵向扩单个容器。
- FIPS 合规:部署单独的 `infisical/infisical-fips` Docker 镜像(Enterprise-only 镜像,不是标准 repo 上的 tag),并设置 `FIPS_ENABLED=true`。
- FIPS 模式下把 `ENCRYPTION_KEY` 格式切换为 256-bit base64。
- 配置环境变量时参考 `./references/environment-variables.md`,逐项设置必填键(`ENCRYPTION_KEY`、`AUTH_SECRET`、数据库、Redis)、数据库与复制、Redis Sentinel、SMTP、OAuth/SSO、FIPS 与 telemetry、安全选项。
- 做 Docker 部署时参考 `./references/docker-deployment.md`,配置独立容器、Docker Compose 生产栈、镜像变体(标准与 FIPS)、安全能力与只读文件系统、健康检查。
- 做 Kubernetes 部署时参考 `./references/kubernetes-deployment.md`,配置 Helm chart 安装、Secret 创建与管理、可选 PostgreSQL 和 Redis(Bitnami charts)、Pod security 与 RBAC、网络策略与 Ingress/TLS。
- 做扩缩容与高可用时参考 `./references/scaling-and-ha.md`,配置水平扩展、Infisical/PostgreSQL/Redis 容量规划、数据库读副本、Redis Sentinel 高可用、备份与升级流程、License server 防火墙规则。
适用边界 · 注意事项
- 不要用于部署 Kubernetes Operator;那是另一个 Helm chart `infisical-kubernetes-operator`,`secrets-operator` chart 安装的是 operator,本技能覆盖安装 platform 的 chart。
- 不要用于 Infisical 运行后的使用配置;运行后如何用应使用 `infisical-setup`。
- 不要用于配置 SSO/SCIM、角色权限/审计日志流、从 Infisical 访问私有资源、外部 KMS/HSM 根密钥等;这些分别使用 `infisical-sso`、`infisical-access-control`、`infisical-gateway`、`infisical-kms`。