Articles of heroku

咕噜和凉亭heroku上

今天我想将我的node.js应用程序部署到heroku。 当地我正在使用bower和grunt发展也我想仍然使用它们。 现在,按照我在networking上发现的一些build议,我将bower添加到了我的dependencies并添加了"postinstall": "node_modules/.bin/bower install到我的package.json postinstall 。 现在我有一些grunt问题。 当我把我的grunt依赖从devDependencies移到dependencies , grunt不能识别我的tasks ,例如当我有 { "name": "js-linkedin-connector", "version": "0.1.0", "dependencies": { "passport": "~0.1.17", "passport-local": "~0.1.6", "passport-linkedin-oauth2": "~1.0.1", "connect": "~2.11.0", "underscore": "~1.5.2", "bower": "1.2.x", "grunt": "~0.4.1", "grunt-cli": "0.1.11", "load-grunt-tasks": "~0.1.0", "grunt-contrib-copy": "~0.4.1", "grunt-contrib-concat": "~0.3.0", "grunt-contrib-coffee": "~0.7.0", "grunt-contrib-uglify": "~0.2.0", "grunt-contrib-compass": "~0.5.0", "grunt-contrib-jshint": "~0.6.0", "grunt-contrib-cssmin": "~0.6.0", "grunt-contrib-connect": "~0.5.0", "grunt-contrib-clean": "~0.5.0", […]

如何使用heroku + node.js + express设置安全Cookie?

我有一个node.js应用程序在雪松堆栈上运行,我很困惑为什么安全cookie不起作用。 "express": "3.0.3", "node": ">=0.8.14", … app.use(express.session({ secret : 'somesecret', store : // store works fine, sessions are stored key : 'sid', cookie : { secure : true, // it works without the secure flag (cookie is set) proxy : true, // tried using this as well, no difference maxAge: 5184000000 // 2 months } […]

使用Redis Cloud和Heroku正确configuration节点会话存储

目前还不清楚使用Redis Cloud和Heroku的正确configuration参数是什么,并且在线找不到function实例。 这是我现在的代码: const express = require('express') const session = require('express-session') const RedisStore = require('connect-redis')(session); … const server = express() server.use(bodyParser.json()) server.use(bodyParser.urlencoded({ extended: false })) server.use(cookieParser()) server.use(session({ secret: token_secret, // create new redis store. store: new RedisStore({ url: 'redis://rediscloud:…@…redislabs.com:11111'}), resave: true, saveUninitialized: true })); 如果Redis Cloud和Heroku作为会话存储(使用快速会话),是否应该将resave和saveUnitialized设置为true或false? 此外,cookieParser会影响会话,需要在那里? 或者是单独parsing来自客户端的cookie,而与Redis的服务器端会话存储无关? 另外,如果cookieparsing器有一个秘密传递给函数? 最后,bodyParser应该在server.use(session)之前还是之后,并且应该将urlencoded extended设置为true或false?

端口超时部署环回应用程序到Heroku

我部署了一个Loopback应用程序Heroku,但它不断崩溃的错误 Web process failed to bind to $PORT within 60 seconds of launch 我知道它可以连接到Heroku的dynamic端口,所以我把我的端口设置为一个进程的环境 app.start = function () { // start the web server var port = process.env.PORT || 3000; app.set('port', port); app.use(loopback.static(path.resolve(__dirname, '../client'))); app.use(loopback.static(path.resolve(__dirname, '../.tmp'))); return app.listen(function () { app.emit('started'); console.log('Web server listening at: %s', app.get('url')); }); }; 但是这并没有解决这个问题。 任何想法?

在Heroku上为新的Firebase设置ElasticSearch上的Flashlight

我的目标是将Firebase与ElasticSearch连接起来,以便在iOS应用中search用户名时可以实现“like”查询。 从我读到的这个是最好的解决scheme,我想早点解决这个问题,以便可扩展而不是蛮横的。 为了实现这一点,我试图将Firebase开发人员为我们提供的手电筒应用程序部署到Heroku上,但是我很困惑如何去做。 请纠正我错在哪里,我对Heroku生态系统,ElasticSearch和nodejs相当陌生。 我目前有一个Heroku账户,并且在我的电脑(Mac)上安装了toolbelt和nodejs / npm。 我运行了以下命令: git clone https://github.com/firebase/flashlight cd flashlight heroku login heroku create heroku addons:add bonsai heroku config (我能用heroku config命令成功获得我的盆景url) 下一步是 heroku config:set FB_NAME=<instance> FB_TOKEN="<token>" 但是我不太了解FB_NAME(我的猜测是Firebase应用程序名称,不过是应用程序名称,还是由于新的Firebase安装程序不再是app_name.firebaseio.com , app_name-abc123.firebaseio.com )和什么是FB_TOKEN? (是我下载的plist中的一个关键或东西?)

使用GitLab连续部署NodeJS

我有一个在.gitlab-ci.yml开发的API,通过.gitlab-ci.yml文件成功build立了持续集成。 如果所有的testing都通过了主分支,下一个阶段是build立到Heroku的连续部署。 有大量的教程涵盖了Ruby和Python应用程序的部署,但NodeJS上没有任何内容。 目前我的.gitlab-ci.yml文件如下所示: image: node:latest job1: script: "ls -l" test: script: "npm install;npm test" production: type: deploy script: – npm install – npm start – gem install dpl – dpl –provider=heroku –app=my-first-nodejs –api-key=XXXXXXXXXX only: – master Ruby和Python教程使用dpl工具进行部署,但是如何在部署后在服务器上启动NodeJS脚本? 添加生产部分并推送之后,testing运行并通过,但部署阶段陷入挂起状态。 控制台是空白的。 有没有人为NodeJS设置了一个成功的CD脚本?

摩卡+ Nodejs + Heroku .env文件

我在Heroku上运行的NodeJS上有一个REST应用程序。 我有我的.env文件设置为本地开发和工作正常,每当我运行领class在本地服务我的应用程序。 当我将它部署到我的heroku服务器时,该应用程序也运行良好。 我正在尝试使用Mocha / Supertest / should / assert为我的应用编写unit testing。 当我通过Mocha运行我的应用程序时,它不会加载.env文件来获取我的环境variables – 在我的情况下是PSQL数据库的URL。 因此,我所有涉及数据库I / O超时的testing。 我一直在互联网search解决scheme,但我似乎无法find有用的东西。 这是一些示例代码: app.js: var application_root = __dirname, express = require("express"), port = process.env.PORT || 4482; pg = require('pg').native, client = new pg.Client(process.env.DATABASE_URL); // Connect To DB client.connect(); (…) app.get('/api', function (req, res) { res.send('PS API is running'); }); […]

Heroku Node.js node-http-proxy模块没有这样的应用程序错误

我试图将stream量从我的testing应用程序的/ api / * urlredirect到Heroku托pipe的我的api。 因此,应将localhost / api / hello代理到testapp.heroku.com/hello,并返回响应。 使用node-http-proxy在localhost到localhost上完美工作,但是当我将它指向myapp.heroku.com时,我得到这个错误: Heroku | No such app There is no app configured at that hostname. Perhaps the app owner has renamed it, or you mistyped the URL. 我感觉Heroku的路由系统正在欺骗我的代理请求,而且我还没有find解决这个问题的方法。 有任何想法吗?

Heroku部署一个子目录?

我试图部署一个节点的应用程序,但我遇到了一个问题,我的代码是如何结构。 该应用程序是在顶层git inited,它看起来像: App (git tracked in remote repo) – .git – server – client – plugin – extras 由于Heroku需要我使用package.json构build文件直接推送服务器目录,所以我不知道如何设置我的目录。 我想这样我可以从'App / server'文件夹部署heroku,但仍然像我现在一样git pull / push整个应用程序: App (git tracked in remote repo) – .git – server (can run 'git push heroku master' for just this folder) – .git (?) – client – plugin – extras […]

Procfile能有意见吗?

是否可以将注释放在Procfile中? 如果是这样,语法是什么? 不知道这是否重要,但我在Heroku上托pipe。