Why is deploying meteor apps so "hard"?

@arunoda https://scalingo.com/meteorjs-hosting

5 Likes

+1 to @arunodaā€™s Mup. it makes deployment pretty trivial.

Scalingo looks amazing. Anyone know how much control you have to give up when using it? e.g. ssh access to box (note that max. box size is 512mb at the moment), location of data centre, version of mongo, ability to use existing mongo deployment, environment variables, etc? On a brief perusal of the docs, I couldnā€™t see a way to manage any of this stuff, but in terms of deployment workflow ā€¦ WOW!

Having said that, once youā€™re up and running with mup, itā€™s pretty much just as easy to deploy.

That looks awesome. Galaxy should work like that. One git push and you are done.

1 Like

@sacha This looks great! Do you know any apps/persons using it?

One git push and you are done

I donā€™t like the git push method of deploying - like Heroku uses. It dictates your repo structure in that your app has to be at the root level.
Usually I like to keep various other resources/docs etc up there and have an ā€œ/appā€ subdir for deployment.
Current meteor deploy method is preferable.

Yeah, I like that too so I use git submodules :smile:

Seriously, I love deploying with git but meteor deploy is great as well. Whatever works and itā€™s easy to use.

Hi @babrahams, Scalingoā€™s CTO here. Iā€™ll answer your questions directly. We are providing a command line utility (http://cli.scalingo.com) which allows you to run one-off boxes, you can then run a precise and interactive task in the environment of your application. Example: scalingo run bash

Concerning the box size, they are limited to 512MB because we strongly believe that divide and conquer is a healthier model, but weā€™ll provide soon a way to achieve also vertical scaling. We are conscious that for some application the model doesnā€™t fit so much. For meteor, thanks to sticky sessions and oplog tailing we got a pretty good support of horizontal scaling.

We are working over two datacentres in Strasbourg (FR) and Paris (FR). Concerning the version of mongo, we are now running on the 2.6 branch, but in the next month youā€™ll be able to choose precisely the version youā€™d like to use (2.6, or 3.0 concerning mongo). If youā€™d like to use an existing database from somewhere else, feel free, just add the environment variable you need in our dashboard or from our CLI (or directly use or API http://developers.scalingo.com)

Itā€™s always the same concerning mup, weā€™re providing a service, so youā€™re not responsible of the server behind your application, we handle security update of the underlying operating system, if it crashes or anything, your app is automaticaly restored somewhere else, scalability becomes easier.

6 Likes

Wow! That was one of the most clear and comprehensive replies Iā€™ve ever got. Nailed every point. Thank you!

Come Meteor Galaxy, save us from deploy drudgery!

3 Likes

(Edit: wow, didnā€™t realize this threat was THAT old :D)

Damn, as much as I LOVEĀ² Meteor and MDG (and wow, I do! :D), I wish Galaxy would work like Scalingo does. Just type a deploy command and grab a coffee.

I know there also has been a lot of praise (by community-members i respect a lot) and theres a great tutorial about how to get Galaxy going for you. But wellā€¦ someone had to write a tutorial. Shouldnā€™t that be unnecessary? :smiley:

Anyway, no big problem.
I guess the more deploy options the better?

Just came to this thread to give credit where credit is due:
Iā€™ve had a great time with Scalingo so far.
It just worked perfectly for me, even with suff like GraphicsMagick out of the box.

Today was the very first time I encountered an error with the deploy step. So I thought Iā€™d drop them a quick email to ask for directions. But while I was typing I recieved an email from them. They fixed the error even before I could ask for help :smiley:

That was a nice experience.

PS:
Still wish all the best to Galaxy and will use it for some projects in the future to support MDG :slight_smile:

I know this post is quite old but well, all information about Meteor is always received with open arms :slight_smile:

I just finished read all replies and sounds interesting but like always with Meteor, different ways to do something and besides with old Meteor versions (Meteor-UP sounded good but last changes were half a year ago EDIT: I just found the new repo).

I started to use Meteor in version 0.8 I think and now I getting back to use it in version 1.3 (even just right now Meteor 1.4 has been released).
Is quite difficult to find something useful and updated as well.

Iā€™m developing an app with Meteor for Androidā€™s Market. In this point I would have to test it in a real server, but Iā€™m really lost. I have to use a hosting (Iā€™m trying Heroku), mLab to host my Mongo collections and another CND host (I have to upload pictures) because obviously Iā€™d like to start with a free plan to do the jump later.

I understand you when you say the deployment is a huge mess. Iā€™d like to find something free and limited and figure out how to work with a server + an apk on Androidā€™s Market.

Any help would be really appreciated :grin:

There are several threads here on using meteor-up-classic and also docker-based meteor-up. Some very recently.

Yes, I just realised there is a new version of meteor-up. I thought it was deprecated.
Iā€™m trying it now.

Yes, I can definitely recommend using mupx, itā€™s awesome. It took me half a day to get my Meteor app up and running on AWS, including learning how to use mupx and set-up an EC2 instance, which was an overall fantastic experience. The only confusing part is choosing which flavour of mup(x) to use :slight_smile:

Never heard about Scalingo, but sounds promising! Greetings to Strasbourg from a start-up based in Karlsruhe :slight_smile:

1 Like

Any luck getting things to work?

@aadams, I added my Heroku hostname (not IP: https://devcenter.heroku.com/articles/custom-domains), user (in this case would be my email) and password.
I added the name and the url of my collection in mLab.

Not sure if I have to add something else or not. Anyway, when I run mup setup nothing happens.

for me deploy on meteor is a totally nightmare, meteor is easy and fast, but the deployment not, i use mup, mupx, demeteorize, and i canā€™t configure google cloud or aws.
modulus is easy to deploy, but donā€™t have a lots of apy like google o aws. and i need to use s3 to upload the images. in the last time, i can upload with elastic beanstalk of aws (but only the meteor test app, when i have a my personal app, have a problem with node). i use sudo meteor build bundle on linux, make the .tar.gz file, uncompress the file, open terminal write npm install (with a package i have when dependencies like underscore, semver, etcā€¦) and try locally the node.js app whit root_url=ā€¦ mongo_url=ā€¦ node main.js.
compress on zip file and upload to elastic beanstalk, AND DONā€™T RUN EVERY TIME!!!
aggggggā€¦

i need a good tutorial, i read all the documentation of ec2, elastic beanstalk, codeCloud, compute Engine, app engine, kubernet, docker. and a lot of services.

i miss the old days, a ftp like filezilla, copy folder and f5!

Hey @levanlacroix , check Modulus out.
They give you $15 (you waste 0.07 ph ) and helped me with the deploy issue that I had.

When everything is running ok you only have to do in your terminal modulus deploy to deploy your latest changes.

Iā€™d suggest to configure the minimum memory and servos at beginning to save money with the $15 budget. Really useful if you want to try your app on a real environment and still working on it.

Mine is running here: http://foodapp-88007.onmodulus.net/

The only point is I had to use mLab instead Modulus database to run my app.

BTW, I have to upload images with my app as well and Iā€™m using a free CDN called Cloudinary and so far so good.

Tutorial: https://help.modulus.io/customer/portal/articles/1647770-using-meteor-with-modulus

If you need help just tell me :wink:

1 Like