首页
/ LinkAce项目Kubernetes部署完全指南

LinkAce项目Kubernetes部署完全指南

2025-07-10 04:14:19作者:凌朦慧Richard

前言

LinkAce是一款优秀的书签管理工具,本文将详细介绍如何使用Helm Chart在Kubernetes集群中部署LinkAce应用。通过本指南,您将了解完整的部署流程、配置要点以及常见注意事项。

部署架构概述

LinkAce Helm Chart采用全栈式部署方案,默认包含以下核心组件:

  1. 应用层

    • LinkAce主应用部署(Deployment)
    • 配套服务(Service)
    • 入口配置(Ingress)
    • 配置密钥(Secret)
    • 日志和备份持久卷(PVC)
    • 定时任务(CronJob)
  2. 数据层(可选):

    • MariaDB数据库
    • Redis缓存服务
    • 各自独立的持久卷

环境准备

在开始部署前,请确保满足以下条件:

  1. 已配置可用的Kubernetes集群
  2. 已安装并配置kubectl工具
  3. 已安装Helm包管理器

详细部署步骤

配置环境变量

LinkAce的关键配置通过环境变量管理,部署前必须完成以下配置:

  1. 生成应用密钥: 执行命令获取唯一的APP_KEY:

    docker run --rm linkace/linkace php artisan key:generate --show
    

    将输出结果填入.env.k8s文件的APP_KEY变量

  2. 数据库安全配置

    • 修改DB_PASSWORD为强密码
    • 修改REDIS_PASSWORD为强密码
  3. 邮件服务配置: 根据实际需求配置MAIL_开头的相关参数

注意:这些敏感信息将以Kubernetes Secret形式存储,确保安全性

自定义部署参数(可选)

通过修改values.yml文件或使用--set参数可调整:

  • 资源限制(CPU/内存)
  • 存储卷大小
  • 数据库版本
  • 自动扩缩容配置

重要提示:若启用了内置数据库或Redis,则不能同时启用自动扩缩容功能

首次部署

  1. 完整部署(包含数据库和Redis):

    cd deploy
    helm install linkace ./linkace
    
  2. 仅部署应用(使用外部数据库):

    helm install linkace ./linkace --set database.enabled=false --set redis.enabled=false
    

更新部署

当配置或应用版本变更时:

cd deploy
helm upgrade linkace ./linkace

卸载部署

如需移除LinkAce:

cd deploy
helm uninstall linkace

生产环境建议

  1. 数据库选择

    • 小型部署可使用内置MariaDB
    • 生产环境建议使用云数据库服务
  2. 持久化存储

    • 确保为数据库配置足够的存储空间
    • 定期检查备份卷的使用情况
  3. 监控方案

    • 配置Pod资源使用监控
    • 设置数据库连接数告警

常见问题排查

  1. 应用启动失败

    • 检查Secret配置是否正确
    • 验证数据库连接参数
  2. 定时任务不执行

    • 检查CronJob Pod状态
    • 查看日志确认任务执行情况
  3. 性能问题

    • 调整资源限制
    • 考虑启用Redis缓存

通过本指南,您应该能够顺利完成LinkAce在Kubernetes环境中的部署和管理。根据实际需求选择合适的部署方案,并定期维护确保系统稳定运行。