腾讯云 Serverless 提供了基于 Serverless 架构的 Discuz!Q 全新部署方式。通过 Serverless Cloud Framework Discuz!Q 组件,您可以三分钟部署一个 Discuz!Q 项目来搭建属于您的社区和论坛。
架构简介
该组件主要为您创建以下资源:
模块 | 说明 |
云函数 SCF | 负责 Serverless Discuz!Q 的接入层实现,从而运行 Discuz!Q。 |
API 网关 | Discuz!Q 的对外入口,实现了 RESTful API。 |
文件储存 CFS | Discuz!Q 代码的挂载和存储仓库。 |
私有网络 VPC | 内网打通云函数 SCF、CFS 之间的网络,保障网络隔离。 |
前提条件
已开通 云函数 SCF 服务。
已开通 文件存储 CFS 服务。
已准备好您的数据库资源,注意配置好网络环境,推荐使用 TDSQL-C Serverless MySQL 数据库。
(可选)准备好已备案的自定义域名,您也可以通过 Serverless 备案资源包完成备案,详情请参见 ICP 备案。
部署步骤
您可以通过控制台或命令行完成 Serverless Discuz!Q 部署,步骤如下:
控制台部署
1. 登录 Serverless 应用控制台,单击新建应用。
2. 选择应用市场 > 快速部署一个Discuz!Q框架,单击下一步。如下图所示:
3. 输入应用名和选择地域后,单击完成即可创建应用。如下图所示:
4. 在 Serverless 应用列表中,选择已创建的应用,进入应用详情页。
5. 在资源列表 > 基础信息中,单击安装地址。如下图所示:
6. 在“安装 Discuz! Q”页中,按照页面提示,安装您的 Discuz!Q 项目,完成数据库配置、账号密码创建等操作。如下图所示:
注意
请保证您绑定的数据库必须和应用本身在同一个 VPC 网络环境下,如果没有数据库实例,您可以参考 TDSQL-C Serverless MySQL 数据库 文档,创建一个 Serverless 数据库并完成绑定。
7. 完成安装后,单击访问应用,输入您的账户名和密码,即可访问您的 Discuz!Q 论坛。如下图所示:
8. 部署完成后,您也可以在资源列表 > 基础信息中,查看应用的资源列表和部署日志。在资源列表页,您可以单击新增配置您的自定义域名。
命令行部署
1. 本地创建
discuzq-demo
文件夹。2. 在文件夹内创建
serverless.yml
配置文件,完成应用信息配置,参考如下:说明
app: discuz-qstage: devcomponent: discuz-qname: discuz-qDemo
完成后,您的项目结构如下:
.discuzq-demo├── serverless.yml # 配置文件└── .env # 环境变量文件
3. 在根目录下,执行
scf deploy
,即可完成部署。示例如下:$ scf deployserverless-cloud-frameworkAction: "deploy" - Stage: "dev" - App: "discuz-q" - Name: "discuz-qDemo"region: ap-shanghaizone: ap-shanghai-2vpc:region: ap-shanghaizone: ap-shanghai-2...cfs:region: ap-shanghai...vpc:...apigw:created: true...apis:...layer:region: ap-shanghaidescription: Created by Serverless Component...runtimes:- Php7version: 1dzqInitFaas:...dzqServerFaas:...layers:...
4. 部署成功后,单击
apigw
部分输出的 URL,根据指引完成账号密码配置,即可开始使用您的 Discuz!Q 应用。