腾讯云 Discuz!Q 组件 ⎯⎯⎯ 通过使用 Tencent Serverless Framework,基于云上 Serverless 服务(如网关、云函数、CFS 等),实现“0”配置,便捷开发,极速部署你的 Discuz!Q 应用,Discuz!Q 组件支持丰富的配置扩展,提供了目前最易用、低成本并且弹性伸缩的 Discuz!Q 项目开发/托管能力。
快速开始:
更多资源:
通过 npm 安装最新版本的 Serverless Framework
$ npm install -g serverless
在 serverless.yml
文件所在的项目根目录,运行以下指令进行部署:
$ serverless deploy
部署时需要进行身份验证,如您的账号未 登陆 或 注册 腾讯云,您可以直接通过 微信
扫描命令行中的二维码进行授权登陆和注册。
注意: 如果希望查看更多部署过程的信息,可以通过
serverless deploy --debug
命令查看部署过程中的实时日志信息。
部署成功后控制台输出参数介绍请参考 output 文档
Discuz!Q 组件支持 0 配置部署,也就是可以直接通过配置文件中的默认值进行部署。但你依然可以修改更多可选配置来进一步开发该 Discuz!Q 项目。
以下是 Discuz!Q 组件的 serverless.yml
配置示例:
# serverless.yml
app: appDemo
stage: dev
component: discuz-q
name: discuzqDemo
inputs:
region: ap-shanghai
src:
exclude:
- .env
点此查看全量配置及配置说明
当你根据该配置文件更新配置字段后,再次运行 serverless deploy
或者 serverless
就可以更新配置到云端。
在serverless.yml
文件所在的目录下,通过如下命令查看部署状态:
$ serverless info
在serverless.yml
文件所在的目录下,通过以下命令移除部署的 Discuz!Q 服务。移除后该组件会对应删除云上部署时所创建的所有相关资源。
$ serverless remove
和部署类似,支持通过 serverless remove --debug
命令查看移除过程中的实时日志信息。
在部署完成 Discuz!Q 后,您需要进行初始化安装和配置数据库,安装步骤请参考官方文档。 建议使用与 Discuz!Q 实例同地域的数据库。
Discuz!Q 组件将在腾讯云账户中使用到如下 Serverless 服务:
- API 网关 - API 网关将会接收外部请求并且转发到 SCF 云函数中。
- SCF 云函数 - 云函数将承载 Wordpress.js 应用。
- CAM 访问控制 - 该组件会创建默认 CAM 角色用于授权访问关联资源。
- COS 对象存储 - 为确保上传速度和质量,云函数压缩并上传代码时,会默认将代码包存储在特定命名的 COS 桶中。
- VPC 私有网络 - 腾讯云私有网络。
- CFS 文件存储 - 腾讯云文件存储。
- SSL 证书服务 - 如果你在 yaml 文件中配置了
apigatewayConf.customDomains
字段,需要做自定义域名绑定并开启 HTTPS 时,也会用到证书管理服务和域名服务。Serverless Framework 会根据已经备案的域名自动申请并配置 SSL 证书。
当前默认支持 CLI 扫描二维码登录,如您希望配置持久的环境变量/秘钥信息,也可以本地创建 .env
文件
$ touch .env # 腾讯云的配置信息
在 .env
文件中配置腾讯云的 SecretId 和 SecretKey 信息并保存
如果没有腾讯云账号,可以在此注册新账号。
如果已有腾讯云账号,可以在API 密钥管理中获取 SecretId
和SecretKey
.
# .env
TENCENT_SECRET_ID=123
TENCENT_SECRET_KEY=123
MIT License
Copyright (c) 2020 Tencent Cloud, Inc.