When it comes to cloud platforms, I only have real experience with Azure (I used AWS a little when I worked for Atlassian, but I never used its services in depth). It was such a refreshing experience to use Heroku.
To deploy my app I pretty much followed this guide by Leonardy Kristianto: How to Run a Meteor.js Application on Heroku in 10 Steps. The only change is that instead of using the buildpack that is mentioned in Leonardy's post, use this fork instead: https://github.com/kevinseguin/heroku-buildpack-meteor (the only difference of this fork is the node.js version that is installed in the environment).
Heroku's buildpacks are amazing. The simplicity of provisioning the environment with these packs felt like such as dev speed boost. As I said, I can only compare this experience with Azure, where I don't think there is something similar (I may be wrong). Another difference is that while a regular Azure's dev experience involves lots of convoluted powershell commandlets to configure and monitor, heroku's CLI was such a contrast in simplicity. This whole platform felt super dev friendly.
So there you have it, we have our live app that auto updates with every git push. All is set to start adding features to the application.
Hi Federico, nice tutorial. I tried following it, but running into issues - this buildpack seems no longer be acceptable to Heroku? and also the MongoLab account - did you have to provide a credit card to heroku for this? Let me know
ReplyDeleteNot sure about the buildpack, in a subsequent entry I mentioned that I ended up changing buildpacks. You should try out the new one described here: http://www.federicosilva.net/2016/05/learning-meteorjs-part-19-update-heroku.html
DeleteRegarding MongoLab, yes, you need to provide a credit card to be able to provision their free 'sandbox' offering. It won't be charged as long as you don't upgrade to a different tier.
Hope it helps.
Buenas tardes, asumo que hablas español por tu nombre, tengo una consulta, estoy usando el buildpack de kevinseguin, y el problema es que toma alrededor de 10 minutos en realizar la build (el proceso "building meteor app bundle") como puedo hacer para que demore menos? si teóricamente lo único que debería hacer es cargar los cambios y dejar que el comando "meteor run" se encargue de recopilar los cambios. O me equivoco?
ReplyDeleteIf you don't speak in spanish, here is a post I just made in the meteor forum https://forums.meteor.com/t/building-time-is-excessively-high/24642
Hola, hace tiempo cambie el buildpack en heroku. Este post tiene mas informacion: http://www.federicosilva.net/2016/05/learning-meteorjs-part-19-update-heroku.html
DeleteEl deployment se tarda alrededor de 2 minutos para mi projecto.
Tambien, heroku no deja 'meteor run' corriendo en tu dyno. Cada que hay un cambio se recicla todo el dyno y vuelve a bajar meteor y las dependencias. Se va a tardar mas que en tu maquina de desarrollo.
DeleteAh genial, voy a probarlo pero te hago otra consulta. Me ocurre que cuando cambio algo en el archivo .travis.yml y pusheo al github heroku no detecta los cambios, porque por ejemplo acabo de cambiar el buildpack pero sin embargo siguió utilizando el buildpack establecido en heroku, como que no cambia las variables de entorno del heroku desde el travis. Tenes idea a que se puede deber esto? Muchas gracias
DeleteNo se, no uso travis. Que yo sepa el buildpack se configura directamente en el portal de heroku.
DeleteEste builpack me da error ya lo había probado antes, pero lo volví a probar, la app crashea, este es el log de heroku.. https://gist.github.com/usersxm/a90a999c1b3038828c2e66eb1726430f
DeleteNunca habia visto este error. Contacta a los contribuidores del buildpack.
Delete