2014-04-04 19 views
5

Was kann ich in meine Procfile einfügen, um eine ember-cli generierte App auf Heroku zu verteilen?Bereitstellung der ember-cli App für Heroku

=== web (1X): `ember server` 
web.1: crashed 2014/04/10 13:19:57 (~ 48s ago) 

=== web (1X): `npm start` 
web.1: crashed 2014/04/10 13:22:11 (~ 2m ago) 
+0

Wenn ich nicht falsch verstehe Ihre Frage, die Tatsache, dass es sich um ein glut-cli App sollte keinen Unterschied machen, nicht wahr? Es ist nur eine normale Ember App? Implementieren Sie es auch mit einer Server-App? –

+1

Es ist wahrscheinlich nicht das beste, aber Sie möchten vielleicht versuchen 'web: ember server --port $ port' Das sollte es tun? – Hock

+0

https://github.com/tonycoco/heroku-buildpack-ember-cli – tonycoco

Antwort

0

Sie mit 'npm start' versuchen oder 'ember Server'

+0

Siehe meine aktualisierte Beschreibung. – jbrown

4

Ich habe dies in meinem procfile und es ist für mich funktioniert:

web: ember serve --environment production --port $PORT 

ich die Anweisungen von this gist gefolgt , wo ich das Procfile bekommen habe.

Die Version und die Abhängigkeiten von ember-cli im Grund sind veraltet, was dazu geführt hat, dass meine App ähnlich wie Ihre abgestürzt ist.

Ich musste die Pakete, die im Abschnitt "Abhängigkeiten" meiner package.json-Datei aufgelistet sind, mit den Paketen ember-cli puts in den Abschnitt "devDependencies" des Pakets json hinzufügen/ersetzen. Als ich meine package.json Datei getan sah wie folgt aus:

{ 
    "name": "your-apps-name", 
    "version": "0.0.0", 
    "private": true, 
    "directories": { 
    "doc": "doc", 
    "test": "test" 
    }, 
    "scripts": { 
    "start": "ember server", 
    "build": "ember build", 
    "test": "ember test", 
    "postinstall": "bower install" 
    }, 
    "repository": "https://github.com/stefanpenner/ember-cli", 
    "engines": { 
    "node": ">= 0.10.0" 
    }, 
    "author": "Your Name", 
    "license": "Your App's License", 
    "devDependencies": { 
    "ember-cli": "0.0.28", 
    "originate": "0.1.5", 
    "broccoli-ember-hbs-template-compiler": "^1.5.0", 
    "loom-generators-ember-appkit": "^1.1.1", 
    "express": "^4.1.1", 
    "body-parser": "^1.2.0", 
    "glob": "^3.2.9" 
    }, 
    "dependencies": { 
    "bower": "^1.3.3", 
    "broccoli-template": "0.1.1", 
    "ember-cli": "0.0.28", 
    "originate": "0.1.5", 
    "broccoli-ember-hbs-template-compiler": "^1.5.0", 
    "loom-generators-ember-appkit": "^1.1.1", 
    "express": "^4.1.1", 
    "body-parser": "^1.2.0", 
    "glob": "^3.2.9" 
    } 
} 
+1

Das Kernteam hat gesagt, dass man nicht so im Produktionsmodus für einen Server läuft. Eine bessere Lösung ist: https://github.com/tonycoco/heroku-buildpack-ember-cli – tonycoco

2

procfile:

web: npm run start 

Package.json:

"scripts": { 
    "start": "ember serve --port=${PORT}", 
    "build": "ember build", 
    "test": "ember test", 
    "postinstall": "bower install" 
}, 

und devDependencies Block umbenennen und bower als eine Abhängigkeit hinzufügen:

"devDependencies": { ... } 

to 

"dependencies": { 
    "bower": "1.3.12" 
    ... 
} 

aber hinzufügen devDependencies wieder und Add-glut cli es für ember Ihre App zu erkennen:

"devDependencies": { 
    "ember-cli": "0.1.15" 
} 

Ein bisschen mehr Informationen und weitere Links können von meinem Blogpost zu finden:

https://personalwebdevelopment.wordpress.com/2015/02/23/deploying-ember-cli-app-to-heroku/

0

Sie könnten das von Heroku empfohlene Ember-Buildpack verwenden: https://www.heroku.com/emberjs

Um diese buildpack für eine bestehende Anwendung zu definieren, müssen Sie den folgenden Befehl auszuführen:

heroku buildpacks:set https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/emberjs.tgz 
Verwandte Themen