2014-04-04 2 views
5

Cosa inserisco nel mio Procfile per distribuire un'app generata da Herberu a Heroku?Distribuzione di app ember-cli su 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

meno che non mi fraintendere la tua domanda, il fatto che si tratta di un app brace-cli dovrebbe fare alcuna differenza, giusto? È solo una normale app Ember? Lo stai distribuendo anche con un'app server? –

+1

Probabilmente non è il massimo, ma potresti provare a provare 'web: server di ember --port $ port' Che dovrebbe farlo? – Hock

+0

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

risposta

0

si può provare con 'inizio NPM' o 'server di brace'

+0

Vedere la mia descrizione aggiornata. – jbrown

4

ho questo nel mio Procfile e sta sta lavorando per me:

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

Ho seguito le istruzioni da this gist , che è dove ho preso quel Procfile.

La versione di ember-cli e le dipendenze nel gist sono obsolete, il che ha causato l'arresto anomalo della mia app.

Avevo bisogno di aggiungere/sostituire i pacchetti elencati nella sezione "dipendenze" del mio file package.json con i pacchetti ember-cli puts nella sezione "devDependencies" del pacchetto json. Quando ebbi finito il mio file package.json si presentava così:

{ 
    "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

Il team principale ha dichiarato di non essere in esecuzione in modalità produzione come questo per un server. Una soluzione migliore è: 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" 
}, 

e rinominare il blocco devDependencies e aggiungere bower come depency:

"devDependencies": { ... } 

to 

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

ma aggiungere nuovamente devDependencies e aggiungere brace-cli lì per brace di rilevare la vostra applicazione:

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

Un po 'più informazioni e ulteriori collegamenti possono essere trovati da mia blogpost:

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

0

È possibile utilizzare il pacchetto di costruzione Ember consigliato da Heroku: https://www.heroku.com/emberjs

per definire questa buildpack per un'applicazione esistente, è necessario eseguire il comando di seguito:

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