存储库-部署向导和安装程序
repository是一个面向企业的文档归档和检索系统:一个REST API,一个 身份验证服务、后台摄取工作者、文档收集器、消化器、客户 智能挖掘器和web界面,运行在SQL Server或Oracle上。
这个包裹就是存托所的样子 已安装和升级。它包含安装向导 Windows和Linux的安装程序,以及配置模板。服务二进制文件本身 来自NPM为你选择的平台包 平台方案 下面。
这是一个商业产品。这个包在npm上是公开的,这样安装的站点就可以更新了 他们自己没有经过认证的登记处,但经营托管机构需要许可证。
大多数网站都不会手动安装
已安装的存储库服务器会自我更新。它的更新脚本运行
npm install -g depository-deploy@<version> --include=optional
然后应用它下载的内容。如果要升级现有服务器,请使用该服务器 更新脚本而不是自己安装这个包-它会停止右边的服务 命令、保存您的配置并重新启动它们。
--include=optional 很重要。如果没有它,npm会跳过平台包,你会得到安装程序
后面没有二进制文件。
新安装
1. 先决条件
| 数据库 | SQL Server 2019+ 或 Oracle 19c++ -可能在另一台机器上 |
| 运行时 | .Net 9 asp . Net. NET Core Runtime (x64)在repository服务器上 |
| 节点 | 18或更新版本,以运行此软件包 |
| Web服务器 | nginx,或Windows上的IIS -可选,用于在端口80上提供UI |
2. 运行向导
npx depository-wizard
它提供了一个设置页面 http://localhost:7474。回答问题,它写a
depository.conf 给你。
喜欢直接编辑文件吗? depository.conf 每个值都附带了注释。完整的
分步指南如下 README.txt 在这个包中-先决条件,每个设置意味着什么,
如何在IIS下提供UI,每日启动/停止命令,以及故障排除。
3. 运行安装程序
窗户 - PowerShell,管理员:
cd install
.\install-windows.ps1
Linux:
cd install
sudo bash install-unix.sh
安装程序创建目录,复制服务,生成每个服务的配置
从 depository.conf,注册和启动服务,配置nginx或Windows服务,
打开防火墙端口并打印状态摘要。
4. 打开web界面
浏览至 SITE_URL 你配置。通过web创建第一个管理员帐户
如果启用了Windows身份验证,则从Active Directory获取。
只安装部分产品
一台服务器可以分配一项任务——通常是放在扫描器或热文件夹旁边的机器 读取,仅运行摄取:
COMPONENTS=worker,gatherer
有效的名称是 api, auth, worker, gatherer, digestor, intelligence, ui。离开
COMPONENTS 空白以安装所有内容,这是单个服务器想要的。
intelligence 客户情报挖矿器是否安装在所有东西上,直到客户才启动
在Admin > Intelligence中打开了Intelligence。更新只在它已经存在的地方刷新它
安装;现有服务器通过再次运行安装程序获得它。
只有一个服务器 api 创建或迁移数据库,只有一个 auth 触摸用户
目录,只有一个与 ui 是一个网站。安装一个部件永远不会停止或更换
另一部分已经在那台机器上了。
不要手工编写摄取服务器的配置。 从主服务器生成它
安装向导的 导出摄取包 按钮,或 DEPOSITORY.TOOLS.SETUP 工具在里面
服务器的 setup/ 文件夹中。生成的文件包含数据库密码:将其移动到受信任的
通道,并在摄取服务器运行后删除它。
升级设置被修改的服务器
运行的每个安装程序都会重写每个服务的配置 depository.conf。这是对的
第一次安装,对于已经在管理员中更改了设置的服务器来说是错误的
屏幕—这些更改在服务器上实时显示,而普通的升级会将它们放回来。
KEEP_SETTINGS=true
然后将已经存在的配置文件单独留下;缺失的是静止的 已写入,因此没有未配置的内容。
升级Windows服务器而不移除其服务
每次运行安装程序都会删除每个存储库Windows服务并重新注册它。这就扔掉了 服务的 登录 帐户,它的密码和它的恢复设置-以及在哪里授予 “作为服务登录”同样需要一个更改请求,每次升级都需要一个。
UPDATE_IN_PLACE=true
然后,作为自动更新,已注册的服务被停止,其文件被替换并重新启动
所做的。没有建立数据库连接,因此不需要数据库密码;API带来了
数据库启动时是最新的。服务配置和IIS站点、应用池和绑定
都保持原样。此版本中的新服务将像以前一样创建,运行为
LocalSystem—安装程序是这么说的,您可以手动设置其登录帐户。这不是第一次
安装时,拒绝配合 CLEAN_DB=true。安装向导将其显示为 更新在
的地方 当它在服务器上找到安装时。
安装程序永远不会触及数据库和存储的文档。
平台方案
服务二进制文件不在此包中。它们分别位于三个可选的依赖项中 受限于它自己的操作系统,所以NPM只安装一个:
| 包 | 为 |
|---|---|
depository-deploy-linux | Linux x64 |
depository-deploy-windows | Windows x64 |
depository-deploy-macos | macOS |
它们与本包一起以同一版本发布,并不意味着是 直接安装。
其中的配置文件在发布时被清理:每个连接字符串、密码
并将token替换为占位符,删除安装程序在运行时写入的任何文件,并且
如果存在真实凭据,则直接拒绝发布。到达npm的东西没有配置任何东西
安装程序自己生成真正的配置 depository.conf。
这个包裹里有什么
wizard.html, wizard-server.mjs | 安装向导(npx depository-wizard) |
install/ | 安装程序,卸载程序,更新和重启脚本,nginx和服务模板 |
depository.conf | 配置模板,完全注释 |
README.txt | 完整的安装和操作指南 |
RELEASE_NOTES.html | 每个版本都改变了什么,升级做了什么 |
读 RELEASE_NOTES.html 在升级之前。 它声明每个版本是否进行数据库迁移
运行,什么升级改变了一个网站,改变了什么,什么是故意不在
释放。
气隙的网站
没有路径到npm的站点会从离线包中安装——和zip包一样的内容。 通过你通常的渠道交付。向你的供应商索要你想要的版本的捆绑包; 一旦打开包装,上面的所有内容都将保持不变。
保持 depository.conf 安全
它对数据库密码和JWT签名保密。保持它只对帐户可读 这将运行安装程序,并删除您在机器之间移动的任何副本 运行。
支持和许可
许可的商业;本包装不授予使用该产品的许可。请提高
通过您现有协议的支持渠道解决问题,并包括您的版本
从 RELEASE_NOTES.html。
在Windows上, diagnose-windows.bat 收集服务状态、端口和最近的日志条目
一个值得附加的输出。Linux还没有类似的;在Linux上发送
systemctl status 'depository-*' 和 journalctl -u depository-api -n 100。