我一直试图让我的Apostrophe网站的多个实例运行一段时间,并且一直遇到问题。我在同一台服务器上尝试了两个实例(在同一个位置,使用在Stagecoach启动脚本中使用的永久方法)以及在不同服务器上使用两个实例,并在它们之间使用共享公用文件夹。这两个似乎都是部分工作,但是当我尝试启动第二个永久进程时,它似乎删除了为该进程的第一个实例创建的生成/缩小的样式表和脚本文件。
不幸的是,我目前仍然使用Windows服务器作为主机,否则我会尝试使用Stagecoach做同样的事情。我猜我没有正确配置。是否有一个设置我需要更改为Apostrophe停止删除/重新创建每次运行的样式表/脚本,还是有办法让两个实例使用相同的文件?
谢谢!
答案 0 :(得分:1)
查看部署中的脚本/。这些是驿马车运行的。即使你不能直接运行它们也是一个很好的参考。
基本上是您想要的任何新部署:
运行node app apostrophe-migrations:migrate --safe
。这将执行任何不要求所有进程都停止的数据库迁移。这是减少停机时间的正确方法。
运行node app apostrophe:generation
。这是你缺少的主要产品。这将创建一个带有资产生成ID的新data/generation
文件,并构建相关的资产文件。当站点的初创公司看到此文件时,他们将知道不构建冗余资产文件或更改资产ID。请注意,旧实例仍然在运行,这是一件好事。
forever stop
现有流程。
运行node app apostrophe-migrations:migrate
以处理在进程启动时未标记为safe
的任何迁移(通常没有)。
使用forever
启动新流程。
此外,您一定要在服务器上的minify: true
中设置data/local.js
:
module.exports = {
modules: {
'apostrophe-assets': { minify: true }
}
};
否则你将有很多单独的.js和.css文件加载。