Tag: 部署

如何在Node.js中实现零停机重新部署

什么是最简单的方法来实现我的Node.js应用程序的零宕机? 我有一个应用程序,需要以下步骤重新部署: npm install node_modules/.bin/bower install node_modules/.bin/gulp 这些操作的结果是由名为build的gulpfile.js目录生成的准备运行的应用程序。 在这个目录中,我有一个相同的应用程序的当前正在运行的实例(目前通过forever start server.js像这样forever start server.js )。 据我所知,通过forever模块不可能达到零停机时间,所以我决定select另一种方式来做到这一点。 我看到了pm2,但我发现它非常复杂tbh(如果你感觉不一样,certificate我错了)。 我也没有看到,但我甚至无法启动我的应用程序通过naught start server.js – 它甚至不打印任何标准输出/标准错误。 我也看到了运行时间,但我没有得到这个想法 – 当我运行gulp应该replace目前正在运行的实例工作的目录中的文件时,它将如何处理情况?

如何使用git自动部署一个configuration文件的网站?

我有一个用NodeJS编写的应用程序。 每次我推我的代码与我的主分支上的git,代码自动部署在我的服务器上。 一切工作正常。 但是我的config文件有问题,这与我的本地服务器和远程服务器不同。 要解决这个问题,我已经排除了git我的config文件并将其复制到_config 。 在_config文件中,我把所有的configuration服务器,当代码部署到服务器,我做了自动$ cp _config config为了采取良好的configuration值。 此解决scheme工作,但我想知道如果这是最好的解决scheme来部署我的config文件,如果它是安全的Bitbucket上。 例如,如果我想与我分享我的存储库,我不能,因为他会看到我的configuration。 有没有另一种解决scheme呢? 如果您有任何build议,请提前致谢。

通过Visual Studio部署到Azure Cloud Service时,未设置环境variables

在Azure云服务中遇到一些环境variables问题。 我想通过ServiceDefentition.csdef文件在部署期间设置一个“NODE_ENV”环境variables。 该variables是由我的node.js应用程序通过process.env.NODE_ENV读入。 这个文档不是非常广泛的(因为这似乎是一个非常简单的事情),但这是我一直以来: link1 link2 我有的ServiceDefinition文件的部分是以下内容: <?xml version="1.0" encoding="utf-8"?> <ServiceDefinition name="userApiServer" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6"> <WebRole name="userApiWebRole" vmsize="Large"> … <Runtime> <Environment> <Variable name="NODE_ENV" value="dev" /> </Environment> </Runtime> … </WebRole> </ServiceDefinition> 我尝试了很多变化; 设置启动任务下的envvariables,而不是运行时,使用xpaths来configuration设置,但他们似乎并没有为我创buildenvvariables。 当用xpaths方法搞乱时,我发现我的configuration设置是在实例上创build的,所以正在读取定义文件。 是否有任何常见(或不常见)的疑难杂症或隐藏的细节,我错过了,因为对于显然非常简单的东西,我有很多麻烦。

为什么我不能部署我的应用程序? (bluemix)

似乎有一个问题,我试图在Bluemix上部署node.js程序。 以下是我在Dev Ops上Build and Deploy的阶段: 首先我的testing阶段似乎是失败的错误: Downloading artifacts…DOWNLOAD SUCCESSFUL _customer_script.sh: line 3: syntax error near unexpected token `(' Finished: ERRORED 我不知道为什么这样,因为当我在本地运行npm test ,所有的testing似乎都通过了。 但是通过testing阶段后,部署阶段失败,呈现下面的错误: —–> Uploading droplet (16M) 0 of 1 instances running, 1 starting 0 of 1 instances running, 1 starting 0 of 1 instances running, 1 down 0 of 1 instances running, 1 […]

meteor部署问题:模块没有自行注册

我刚在digitalocean租了一个servlets器,然后我按照这个教程来安装meteor: https://www.digitalocean.com/community/tutorials/how-to-deploy-a-meteor-js-application-on-ubuntu-14-04-with-nginx 我明白我做了什么,一切顺利。 然后当我第一次启动项目时,我得到了一个nodejs版本的问题,所以我更新到4 ….然后我有一个纤维问题,所以我重新安装它,现在我得到这个: 新贵日志: /home/[user]/bundle/programs/server/node_modules/fibers/future.js:267 throw(ex); ^错误:模块没有自注册。 在module.load(module.js:355:32)在Module.require(module.js:365:17)的Function.Module._load(module.js:310:12)的错误(native) .js:384:17)at bindings(/home/[user]/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)at目的。 (/home/[user]/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)at Module._compile(module.js:460:26)at Object.Module._extensions..js(module.js:478:10)在Module.load(module.js:355:32) 首先,我试图降级到nodejs 0.12,因为这是我在开发中使用的。 我也尝试删除node_module文件夹和npm重新安装/重build一切。 而我只是试图重新安装bcrypt 我卡住,我不知道什么是实际的问题。 我该怎么办 ? RXP

可用于部署应用程序的最简单的服务器和数据库服务(AWS特定)

我已经写了一个实时的多人游戏,并且正在使用NodeJS编写它的服务器。 我希望我的游戏有login,升级等,所以我需要一个数据库。 这是我第一次部署一些东西,而且我主要是自学的,所以如果我把事情搞混了,请纠正我。 由于这是我的第一次审判,我不想立即做出承诺,所以我只是在寻找免费的select。 因为这应该是一个实时游戏,我需要一个相对较快的服务器响应。 这就是为什么我正在寻找最简单的数据库和服务器提供程序,我知道有了这些限制,我有有限的select和function。 据我在网上阅读,Heroku似乎是我最简单的select服务器(这就是为什么我开始在NodeJS写作)。 但似乎没有免费的数据库服务,因为https://devcenter.heroku.com/articles/heroku-postgres-plans上的所有选项都有月费。 我不想使用Google App Engine,因为我是新手(当然没有提到初学者友好)。 所以,我发现AWS下面的免费云数据库服务的家庭发展后,似乎我可以使用amazon web services作为服务器和数据库。 然而,我遇到的大多数post都提到了Google App Engine或Heroku,并没有提及AWS。 这是因为我混合了概念,还是AWS有缺陷,我不知道? 您认为将AWS用作服务器和数据库是一个好主意,在使用AWS作为数据库时是否可以使用Heroku作为服务器,或者您是否有其他build议? 注:对于这个问题的轰炸抱歉,但这些都是相关的,我有点迷失在这个话题,所以我不得不问…

Herkoku节点部署与子文件夹

我正在尝试几个小时,并没有想法离开…也许你有一些:-) 我正在使用react-starter-kit作为我的react-app和gitlab作为我的存储库。 我已经启用gitlab-ci部署和运送我的应用程序到heroku。 好吧, gitlab-ci作品… 是的 但是使用/build文件夹来处理所有的资源和缩小的等应用程序。 我如何能够通过gitlab-ci获得heroku上的可运行应用程序? 我添加了这个内容的Procfile: web: node ./build/server.js heroku日志输出如下: 2017-01-02T16:57:54.655686+00:00 heroku[web.1]: State changed from crashed to starting 2017-01-02T16:57:58.721166+00:00 heroku[web.1]: Starting process with command `node ./build/server.js` 2017-01-02T16:58:00.987643+00:00 heroku[web.1]: Process exited with status 1 2017-01-02T16:58:00.995852+00:00 heroku[web.1]: State changed from starting to crashed 2017-01-02T16:58:00.997060+00:00 heroku[web.1]: State changed from crashed to starting 2017-01-02T16:58:00.833548+00:00 app[web.1]: module.js:471 […]

平均堆栈:设置默认path

我可以在哪里设置平均堆栈应用程序的默认path? 本地path是 http://localhost:3000 但我想要的应用程序开始 http://localhost:3000/myapp/ 在我看来,我希望我的路由不会改变: const appRoutes: Routes = [ { path: '', component: HomeComponent, pathMatch: 'full', canActivate: [AuthGuard] }, { path: 'login', component: AuthComponent }, { path: 'register', component: RegisterComponent }, // otherwise redirect to home { path: '**', redirectTo: '' } ]; 当我部署在我的服务器上我想让我的应用程序运行在端口80上,并在其分离的上下文中,如下所示: http://www.myserver.com/myapp/ 路由听起来像这样: http://www.myserver.com/myapp/home http://www.myserver.com/myapp/login 如果我指出一个没有设定的路线: http://www.myserver.com/myapp/notexists 它的基地redirect: http://www.myserver.com/myapp/ 提前致谢。

如何在部署成功后通过VSTS在Azure应用服务上运行npm命令?

现在我可以从VSTS部署到azure,但是部署成功后我无法运行npm。 现在就像 – >运行npm install for branch files => zip =>复制到azure => deploy。 我想添加npm run custom-comand到这个链的末尾。 怎么做?

节点Heroku部署找不到导出的Mongo架构

从我的节点应用程序的Heroku生成过程完成没有问题,但是当我尝试访问部署的网站Heroku日志显示以下错误: 2017-09-19T18:50:49.490021+00:00 app[web.1]: > simple-weather-app@0.0.0 start /app 2017-09-19T18:50:49.490022+00:00 app[web.1]: > node server.js 2017-09-19T18:50:50.665027+00:00 app[web.1]: module.js:487 2017-09-19T18:50:50.665042+00:00 app[web.1]: throw err; 2017-09-19T18:50:50.665043+00:00 app[web.1]: ^ 2017-09-19T18:50:50.665045+00:00 app[web.1]: Error: Cannot find module '../models/location' 2017-09-19T18:50:50.665046+00:00 app[web.1]: at Function.Module._resolveFilename (module.js:485:15) 2017-09-19T18:50:50.665047+00:00 app[web.1]: at Module.require (module.js:513:17) 2017-09-19T18:50:50.665044+00:00 app[web.1]: 2017-09-19T18:50:50.665046+00:00 app[web.1]: at Function.Module._load (module.js:437:25) 2017-09-19T18:50:50.665048+00:00 app[web.1]: at require (internal/module.js:11:18) 2017-09-19T18:50:50.665049+00:00 app[web.1]: at Module._compile […]