1. 安装部署
  2. Windows 部署

本教程以 my-app 为例,指导你如何在 Windows 系统中本地部署和运行基于华炎魔方2.1开发的项目,部署完成后就可以开发华炎魔方项目了。

安装前准备

安装开发工具

安装Node.js

从官网下载我们推荐安装的12版的最后一个版本 12.22.10,请点击下载后安装。

更多版本请参考 https://nodejs.org/en/download/releases/ ,其他版本我们未充分测试过,如果需要使用其他版本请参阅Node.js长期维护版本日程 https://nodejs.org/zh-cn/about/releases/ 避免安装奇数版本。

安装yarn命令

nodejs安装完成之后打开终端执行以下命令安装yarn。

npm install -g yarn

配置淘宝镜像

国内用户配置淘宝 NPM 镜像以提高 NPM 包下载速度:

npm config set registry http://registry.npmmirror.com
yarn config set registry http://registry.npmmirror.com

安装steedos命令

安装或更新Steedos CLI命令工具

npm i steedos-cli --global

安装redis缓存服务

通过Windows版本Redis库找到安装包,安装Redis服务。

建议安装时选择将 redis 安装路径添加到 PATH。

请注意,Redis安装完成后,需要在redis配置文件中补上以下配置,以防止启动项目时Redis报错:Redis-sub client is disconnected.

client-output-buffer-limit normal 0 0 0
client-output-buffer-limit pubsub 0 0 0
client-output-buffer-limit slave 0 0 0

安装mongodb数据库

参考官方安装文档安装数据库,建议安装4.2及以上版本。

安装时请勾选安装MongoDB Compass,Compass是Mongo windows 安装包自带的一个可视化操作工具。

安装成功后将安装路径添加到系统环境变量中,例如:C:\Program Files\MongoDB\Server\4.2\bin

配置mongodb集群模式启动

修改mongodb安装路径下的mongod.cfg,例如:C:\Program Files\MongoDB\Server\4.2\bin\mongod.cfg

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
...

#  找到replication,去掉#并添加一行配置
replication:
  #  以下配置必须缩进两个空格
  replSetName: rs0

\ 在 任务管理器-服务 中找到MongoDB服务,并右键重启

打开cmd窗口,连接Mongodb

# 执行mongo连接数据库
mongo

...
# 表示集群配置已成功
rs0:PRIMARY>

安装华炎魔方

创建项目

通过在终端执行 npx create-steedos-app my-app 命令创建 my-app 项目。

执行上述命令后会在当前文档夹下创建一个名为”my-app”的文件夹,其目录主要结构为:

my-app
├── .steedos
├── .vscode
├── jsreport-app
├── services
├── steedos-app
├── steedos-packages
├── .env
├── .env.local
├── .gitignore
├── docker-compose.yml
├── Dockerfile
├── Dockerfile-codeserver
├── index.js
├── lerna.json
├── moleculer.config.js
├── package.json
├── README.md
├── steedos-config.yml
└── yarn.lock

其中

  • .steedos: 引用第三方软件包的配置文件。
  • jsreport-app: 是一个独立的JsReport项目,用于设计各种报表。详情请参考 JsReport报表开发向导
  • steedos-app: 用于保存项目元数据和源码,华炎魔方启动是会自动加载其中的元数据。使用华炎魔方 DX 工具同步元数据时,默认同步到此文件夹中。
  • steedos-packages: 当你的项目需要分包管理时,可以使用此文件夹。你也可以把第三方软件包复制到此文件夹中,华炎魔方启动时会自动加载其中的元数据。
  • services: 用于保存微服务相关配置文件。
  • moleculer.config.js: 使用moleculer运行服务时的配置文件。
  • .env: 环境变量配置文件,可以配置端口、URL 等环境变量。
  • .env.local: 可以手工创建此文件,用于保存本地开发环境的配置。此文件不会上传到 GitHub 中。
  • steedos-config.yml: 华炎魔方配置文件,具体参考官方文档
  • package.json: 用于配置本项目依赖的 npm 包。如果需要升级 steedos 内核版本,也是修改此文件。

安装依赖包

使用vs code 打开解压后的文件夹,点击“终端”,打开命令窗口安装项目依赖的包

yarn

配置环境变量

如果您安装的版本较低,需要拷贝.env 到 .env.local,用于配置运行的服务的环境变量,指定MongoDB地址、Redis服务地址和ROOT_URL:

PORT=3000
ROOT_URL=http://localhost:3000
MONGO_URL=mongodb://localhost:27017/steedos
TRANSPORTER=redis://127.0.0.1:6379
CACHER=redis://127.0.0.1/1
STEEDOS_CLOUD_SPACE_ID=#在此填入私有部署记录中的魔方ID
STEEDOS_CLOUD_API_KEY=#在此填入私有部署记录中的API Key

请先 开通华炎魔方云服务 然后 激活华炎魔方,环境变量STEEDOS_CLOUD_SPACE_IDSTEEDOS_CLOUD_API_KEY的值就是其中新建的私有部署记录中的”魔方ID”和”ApiKey”。

请注意,最新版本的华炎魔方需要把ROOT_URL配置为像下面这种本地IP地址或外网域名才能被其他电脑正常访问,否则在列表视图界面会显示“未找到符合查询条件的集合”这种空列表。

ROOT_URL=http://192.168.0.95:3000

启动服务

执行命令启用服务

yarn start

待服务启动完成后,会自动使用默认浏览器打开地址 <http://localhost:3000 ](http://localhost:3000)

升级内核版本

根目录下有一个package.json文件,该文件中可以维护项目中各个依赖的npm包的版本号。

要升级华炎魔方的内核版本号,只需要把该文件dependencies节点下的内容替换成 "@steedos/service-community": "^2.x" 或者 "@steedos/service-community": "指定版本" 就可以了。

{
  "dependencies": {
    "@steedos/service-charts": "2.1.27",
    "@steedos/service-metadata-server": "2.1.27",
    "@steedos/service-mongodb-server": "2.1.27",
    "@steedos/service-package-loader": "2.1.27",
    "@steedos/service-package-registry": "2.1.27",
    "@steedos/service-pages": "2.1.27",
    "@steedos/service-steedos-server": "2.1.27",
    ...
  }
}
  • 升级到最新版本

    "dependencies": {
         "@steedos/service-community": "^2.1"
    },
    
  • 升级到指定版本

    "dependencies": {
         "@steedos/service-community": "2.1.74"
    },
    

对于较老版本的魔方项目,在升级内核版本时,除了应该把版本号升级到最新的魔方版本之外,还需要确定下项目根目录下的steedos-config.yml,.env,package.json等文件与最新版本的 模板项目中同名文件内容是否有明显差异,推荐升级时把有差异的文件内容也复制到您的项目中以避免因配置文件不一致或缺少相关依赖包引起的问题。

修改好package.json文件中的版本号后,命令行中cd到项目目录并执行下yarn即可安装相关依赖包,待安装完成后再执行下yarn start即可以新版本启动服务。

:::info 查询最新steedos-server 版本号

:::