Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-unicloud-zh
提交
22ec033c
U
unidocs-unicloud-zh
项目概览
DCloud
/
unidocs-unicloud-zh
通知
98
Star
2
Fork
22
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
3
列表
看板
标记
里程碑
合并请求
10
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-unicloud-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
3
Issue
3
列表
看板
标记
里程碑
合并请求
10
合并请求
10
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
22ec033c
编写于
4月 03, 2024
作者:
JiaRongPing
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: uniCloud 软件版说明文档更新
上级
e1159ee4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
66 addition
and
35 deletion
+66
-35
docs/unicloud-private-env.md
docs/unicloud-private-env.md
+66
-35
未找到文件。
docs/unicloud-private-env.md
浏览文件 @
22ec033c
# uniCloud
私有云
# uniCloud
软件版
## 产品介绍
[
uniCloud官网
](
https://doc.dcloud.net.cn/uniCloud/
)
介绍的uniCloud,默认都是
`uniCloud
公有云
`
。
[
uniCloud官网
](
https://doc.dcloud.net.cn/uniCloud/
)
介绍的uniCloud,默认都是
`uniCloud
serverless版
`
。
`uniCloud
公有云
`
基于云计算的
`serverless`
技术实现,后端逻辑代码运行在云厂商的公有云服务器(容器)中,服务器(容器)不跟具体开发者关联绑定,会随着终端用户量的变化自动弹性增减或收缩,开发者对服务器的具体型号、配置等无感。
`uniCloud
serverless版
`
基于云计算的
`serverless`
技术实现,后端逻辑代码运行在云厂商的公有云服务器(容器)中,服务器(容器)不跟具体开发者关联绑定,会随着终端用户量的变化自动弹性增减或收缩,开发者对服务器的具体型号、配置等无感。
现实中,部分开发者因合规要求(如数据必须在公司内网),或需要对后端服务器有更强的可控性,希望uniCloud能部署在自己机房内或自己的云厂商账号下,因此,
`uniCloud
私有云
`
应运而生。
现实中,部分开发者因合规要求(如数据必须在公司内网),或需要对后端服务器有更强的可控性,希望uniCloud能部署在自己机房内或自己的云厂商账号下,因此,
`uniCloud
软件版
`
应运而生。
### uniCloud
私有云
有哪些特点?
### uniCloud
软件版
有哪些特点?
从开发工具、API、生态各维度,
私有云和公有云版没有差别。开发者基于公有云版编写的uniCloud项目源码,可以平滑部署到私有云
,前端uni-app代码、后端云函数、云对象等代码,均无需修改。
从开发工具、API、生态各维度,
软件版和serverless版没有差别。开发者基于serverless版编写的uniCloud项目源码,可以平滑部署到软件版
,前端uni-app代码、后端云函数、云对象等代码,均无需修改。
相比
公有云版,
`uniCloud私有云
`
最主要的差别如下:
相比
serverless版,
`软件版
`
最主要的差别如下:
-
开发者需要单独购买服务器,自己安装操作系统(目前仅支持
`linux`
操作系统);
-
开发者自己购买云存储、开通CDN加速产品;
-
开发者自己安装数据库,或者购买mongodb实例;
-
开发者自己处理负载均衡,自己负责日常运维。
而如上工作,
`
uniCloud公有云版`
均无需进行,公有云
版通过
`服务空间`
的概念,将云函数、云存储、云数据库统一封装,开发者可一键开通所有业务,不需要额外去开通云存储及CDN,也无需去安装或购买云数据库实例。
而如上工作,
`
serverless版`
均无需进行,serverless
版通过
`服务空间`
的概念,将云函数、云存储、云数据库统一封装,开发者可一键开通所有业务,不需要额外去开通云存储及CDN,也无需去安装或购买云数据库实例。
进一步解释,uniCloud
私有云
实际上是一个
`支持uniCloud语法的Node开发框架`
。
进一步解释,uniCloud
软件版
实际上是一个
`支持uniCloud语法的Node开发框架`
。
你可以更具象化理解:uniCloud
私有云
就是
`支持uniCloud语法的类Egg.js框架`
。
你可以更具象化理解:uniCloud
软件版
就是
`支持uniCloud语法的类Egg.js框架`
。
> 和Egg.js框架差异:uniCloud
私有云
内置有定制版本的Node.js运行时,并且仅可在内置的定制Node.js上运行,不支持使用开发者安装的Node.js环境。
> 和Egg.js框架差异:uniCloud
软件版
内置有定制版本的Node.js运行时,并且仅可在内置的定制Node.js上运行,不支持使用开发者安装的Node.js环境。
uniCloud
私有云,作为一个开发框架,仅负责云函数、云对象的执行,支持在云函数中连接开发者自己的对象存储和数据库。而这些对象存储和数据库,需要开发者自己去购买开通,uniCloud私有云
本身没有内置。
uniCloud
软件版,作为一个开发框架,仅负责云函数、云对象的执行,支持在云函数中连接开发者自己的对象存储和数据库。而这些对象存储和数据库,需要开发者自己去购买开通,uniCloud软件版
本身没有内置。
存储方面,uniCloud
私有云
目前支持如下3种存储方案:
-
本地存储:文件存储和uniCloud
私有云
在同一台服务器上;
存储方面,uniCloud
软件版
目前支持如下3种存储方案:
-
本地存储:文件存储和uniCloud
软件版
在同一台服务器上;
-
阿里云OSS
-
腾讯云COS
数据库方面,uniCloud
私有云仅支持
`mongodb`
,支持uniCloud
本地服务器上安装的mongodb,也支持在云厂商购买单独的mongodb实例。
数据库方面,uniCloud
软件版仅支持
`mongodb`
,支持
本地服务器上安装的mongodb,也支持在云厂商购买单独的mongodb实例。
## 安装指南
::: warning 注意
1.
为了与
公有云保持一致,私有云
目前仅支持
`mongo 4.0`
版本
2.
uniCloud
私有云
内置的定制
`node.js`
版本为
`16.20.2`
1.
为了与
serverless版保持一致,软件版
目前仅支持
`mongo 4.0`
版本
2.
uniCloud
软件版
内置的定制
`node.js`
版本为
`16.20.2`
:::
### 获取安装软件
uniCloud
私有云
是付费软件,你需要先发邮件到
`bd@dcloud.io`
,通过商务采购后才能获得。
uniCloud
软件版
是付费软件,你需要先发邮件到
`bd@dcloud.io`
,通过商务采购后才能获得。
获得安装软件后,你需要将安装包上传到自己的服务器,然后登录服务器,进行文件解压;
...
...
@@ -58,7 +58,7 @@ tar -zxvf [version].tar.gz -C /uniCloud
### 获取激活license
uniCloud
私有云
的license是和服务器硬件绑定的,激活软件之前需要先执行扫描操作:
uniCloud
软件版
的license是和服务器硬件绑定的,激活软件之前需要先执行扫描操作:
-
下载
[
uniCloud-scan
](
https://web-ext-storage.dcloud.net.cn/unicloud/private/tools/get-hardware-id
)
-
上传 uniCloud-scan到服务器
-
在服务器上执行
`./uniCloud-scan`
...
...
@@ -67,7 +67,7 @@ uniCloud私有云的license是和服务器硬件绑定的,激活软件之前
### 启动/关闭软件
> 所有命令请在
私有云
环境根目录运行
> 所有命令请在
软件版
环境根目录运行
启动
...
...
@@ -82,9 +82,9 @@ uniCloud私有云的license是和服务器硬件绑定的,激活软件之前
### 创建服务空间
为了和
公有云
版保持一致的开发体验,你需要创建服务空间:
-
登录
[
uniCloud控制台
](
https://unicloud.dcloud.net.cn/
)
创建
私有云
服务空间,复制新建空间的SpaceId
-
登录
uniCloud私有云
服务器,创建空间目录:
为了和
serverless
版保持一致的开发体验,你需要创建服务空间:
-
登录
[
uniCloud控制台
](
https://unicloud.dcloud.net.cn/
)
创建
DCloud
服务空间,复制新建空间的SpaceId
-
登录
部署uniCloud软件版的
服务器,创建空间目录:
```
cd /uniCloud/spaces/
mkdir [SpaceId]
...
...
@@ -94,11 +94,11 @@ mkdir [SpaceId]
在你的服务空间目录下创建
`config.json`
配置文件,文件内容如下:
```
js
```
js
on
//下方为配置示例,如拷贝此内容切记去除注释
{
"
default
"
:
true
,
//是否为默认服务空间,一套
私有云
环境下,只能有一个默认服务空间
"
spaceId
"
:
"
pvt-xxx
"
,
//
私有云
服务空间编号,可在uniCloud控制台查看
"default"
:
true
,
//是否为默认服务空间,一套
uniCloud软件版
环境下,只能有一个默认服务空间
"spaceId"
:
"pvt-xxx"
,
//
DCloud
服务空间编号,可在uniCloud控制台查看
"startAsDaemon"
:
true
,
//
是否在后台运行;
默认
true
"port"
:
7001
,
//端口号,可自定义,同一台服务器下,各服务空间的端口号不可重复
"clientSecret"
:
"xxx"
,
//客户端通讯密钥
...
...
@@ -118,7 +118,7 @@ mkdir [SpaceId]
"storageSecret"
:
"xxxxxxxxxx"
,
//本地存储服务访问密钥
},
"logger"
:
{
//日志服务配置
"
customLogDir
"
:
"
/private-cloud-env/logs
"
//
私有云
环境日志存储路径
"customLogDir"
:
"/private-cloud-env/logs"
//
uniCloud软件版
环境日志存储路径
},
"redis"
:
{
//redis库配置,如项目未使用redis服务可不配置此项
"host"
:
"127.0.0.1"
,
//redis连接
...
...
@@ -149,11 +149,11 @@ mkdir [SpaceId]
### 使用HBuilerX开发调试
>
私有云
暂不支持`oss`、`cos`等存储服务的本地调试。
>
软件版
暂不支持`oss`、`cos`等存储服务的本地调试。
#### 安装override插件包
私有云
环境的
`mongo`
、
`redis`
等数据库是由开发者自行购买或安装的,因此要想在
`HBuilderX`
中连接这些服务,需安装相关的插件包和npm依赖,并为项目添加数据库等服务的配置文件。
软件版
环境的
`mongo`
、
`redis`
等数据库是由开发者自行购买或安装的,因此要想在
`HBuilderX`
中连接这些服务,需安装相关的插件包和npm依赖,并为项目添加数据库等服务的配置文件。
1.
下载并解压
`override插件包`
,插件包可联系
`DCloud`
工作人员获取。
...
...
@@ -164,24 +164,24 @@ mkdir [SpaceId]
#### 关联服务空间
`HBuilderX`
中运行
`uniCloud项目`
,必须关联服务空间,但HBuilderX暂不支持关联
私有
服务空间,此时你需要按照如下操作进行:
`HBuilderX`
中运行
`uniCloud项目`
,必须关联服务空间,但HBuilderX暂不支持关联
DCloud
服务空间,此时你需要按照如下操作进行:
-
创建一个免费的公有云服务空间,仅做为关联使用,无需担心费用;
-
修改配置文件:
`vue2项目`
的配置文件为:
`vue.config.js`
,
`vue3项目`
的配置文件为:
`vite.config.js`
,内容如下:
```
js
//客户端
私有云
服务空间连接配置示例
//客户端
DCloud
服务空间连接配置示例
process
.
env
.
UNI_CLOUD_PROVIDER
=
JSON
.
stringify
([{
provider
:
'
private
'
,
//声明为私有云服务
provider
:
'
dcloud
'
,
//声明为DCloud服务空间
spaceName
:
'
private-space
'
,
//服务空间名称
spaceId
:
'
pvt-xxx
'
,
//服务空间编号
clientSecret
:
'
ba461799-fde8-429f-8cc4-4b6d306e2339
'
,
//客户端通讯密钥
endpoint
:
'
http://127.0.0.1:7001
'
//
私有云服务器
的访问地址
endpoint
:
'
http://127.0.0.1:7001
'
//
DCloud服务空间
的访问地址
}])
```
关于spaceId、clientSecret等
私有云
服务空间相关信息,可在
[
uniCloud控制台
](
https://unicloud.dcloud.net.cn/
)
查看。
关于spaceId、clientSecret等
DCloud
服务空间相关信息,可在
[
uniCloud控制台
](
https://unicloud.dcloud.net.cn/
)
查看。
HBuilderX会尽快发版,支持关联
私有云的
服务空间。
HBuilderX会尽快发版,支持关联
DCloud
服务空间。
#### 配置数据库链接
...
...
@@ -248,3 +248,34 @@ http {
}
```
### 防火墙白名单配置
若你的服务器开启了防火墙功能,且需要访问如:
`uniCloud软件版(联网版)`
、
`短信`
、
`一键登录`
、
`uni-ai`
、
`实人认证`
、
`uni-push`
等在线业务,则需要将这些业务的API域名,添加到防火墙白名单中。
以
`CentOS系统`
为例,配置方式如下
```
conf
# 添加域名白名单,实际配置时,请将 “DCloud API域名1/2” 替换为具体域名
sudo
firewall
-
cmd
--
permanent
--
zone
=
public
--
add
-
rich
-
rules
=
'rule family="ipv4" source address="DCloud API域名1" accept'
sudo
firewall
-
cmd
--
permanent
--
zone
=
public
--
add
-
rich
-
rules
=
'rule family="ipv4" source address="DCloud API域名2" accept'
# 添加更多域名...
# 重新加载firewalld配置:
sudo
firewall
-
cmd
--
reload
```
#### 各业务API域名
-
uniCloud软件版(联网版)及付费业务API域名
-
- pucoa1.dcloud.net.cn
-
- pucoa2.dcloud.net.cn
-
- pucoabk.dcloud.net.cn
-
uni-push业务API域名
-
- restapi.getui.com
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录