Scalingo ( https://scalingo.com/ )
Scalingo hosting is really easy to use . For do deploys you need only push your project in their git repositores . Yours first applications are free to deploy with a limited resources, but is better than meteor oficial deploy.
How to use this ?
1 – First you need sing up ;
2 – Configure your ssh key in the plataform ;
Example for mac and linux users
$ cd .ssh $ ls id_rsa id_rsa.pub known_hosts $ cat id_rsa.pub
Take de value of id_rsa.pub ( your public key ) and set in the scalingo plataform.
3 – Create a new application in your scalingo to do the deploy:
4 – Go to your application folder and make the push for this ;
Example for mac and linux users
Commands line :
$cd myapplication/ $git init $git add . $git commit -am "myapplication" $git remote add scalingo git@scalingo.com:myapplication.git $git push scalingo master
I created a new application meteor only to do this exemple. You can look all steps and results:
Camilas-MacBook-Pro:pessoais camilamacedo$ meteor create myapplication myapplication: created. To run your new app: cd myapplication meteor Camilas-MacBook-Pro:pessoais camilamacedo$ cd myapplication/ Camilas-MacBook-Pro:myapplication camilamacedo$ ls myapplication.css myapplication.html myapplication.js Camilas-MacBook-Pro:myapplication camilamacedo$ git init Initialized empty Git repository in /Users/camilamacedo/projetos/pessoais/myapplication/.git/ Camilas-MacBook-Pro:myapplication camilamacedo$ git add . Camilas-MacBook-Pro:myapplication camilamacedo$ git commit -am "myapplication" [master (root-commit) 57236ab] myapplication 10 files changed, 114 insertions(+) create mode 100644 .meteor/.finished-upgraders create mode 100644 .meteor/.gitignore create mode 100644 .meteor/.id create mode 100644 .meteor/packages create mode 100644 .meteor/platforms create mode 100644 .meteor/release create mode 100644 .meteor/versions create mode 100644 myapplication.css create mode 100644 myapplication.html create mode 100644 myapplication.js Camilas-MacBook-Pro:myapplication camilamacedo$ git remote add scalingo git@scalingo.com:myapplication.git Camilas-MacBook-Pro:myapplication camilamacedo$ git push scalingo master Counting objects: 13, done. Delta compression using up to 8 threads. Compressing objects: 100% (9/9), done. Writing objects: 100% (13/13), 1.99 KiB | 0 bytes/s, done. Total 13 (delta 0), reused 0 (delta 0) tar: .meteor/.finished-upgraders: time stamp 2015-05-18 11:46:31 is 160.778837386 s in the future tar: .meteor/.gitignore: time stamp 2015-05-18 11:46:31 is 160.778666604 s in the future tar: .meteor/.id: time stamp 2015-05-18 11:46:31 is 160.778608481 s in the future tar: .meteor/packages: time stamp 2015-05-18 11:46:31 is 160.778543757 s in the future tar: .meteor/platforms: time stamp 2015-05-18 11:46:31 is 160.778481297 s in the future tar: .meteor/release: time stamp 2015-05-18 11:46:31 is 160.778426799 s in the future tar: .meteor/versions: time stamp 2015-05-18 11:46:31 is 160.778373655 s in the future tar: .meteor: time stamp 2015-05-18 11:46:31 is 160.778350998 s in the future tar: myapplication.css: time stamp 2015-05-18 11:46:31 is 160.778303569 s in the future tar: myapplication.html: time stamp 2015-05-18 11:46:31 is 160.778247182 s in the future tar: myapplication.js: time stamp 2015-05-18 11:46:31 is 160.778196245 s in the future -----> Reading application state package.json... build directory... cache directory... environment variables... Node engine: unspecified Npm engine: unspecified Meteor.js Framework: METEOR@1.1.0.2 Start mechanism: none node_modules source: package.json node_modules cached: false NPM_CONFIG_PRODUCTION=true NODE_MODULES_CACHE=true -----> Installing binaries Resolving node version for Meteor 0.10.x via semver.io... Downloading and installing node 0.10.38... Using default npm version: 1.4.28 -----> Meteor app detected -----> Downloading Meteor distribution -----> Meteor 1.1.0.2 has been installed. -----> Meteor installed → METEOR@1.1.0.2 /build/e030c09c194f4993edd32cbaecb751e5/.vendor/node/bin/demeteorizer -> /build/e030c09c194f4993edd32cbaecb751e5/.vendor/node/lib/node_modules/demeteorizer/bin/demeteorizer demeteorizer@2.2.2 /build/e030c09c194f4993edd32cbaecb751e5/.vendor/node/lib/node_modules/demeteorizer ├── async@0.2.10 ├── semver@3.0.1 ├── commander@1.1.1 (keypress@0.1.0) └── rimraf@2.3.2 (glob@4.5.3) -----> Demeteorizer installed Input: /build/e030c09c194f4993edd32cbaecb751e5 Output: /tmp/demetorized_lVFC Determining Meteor version... Meteor version: 1.1.0.2 Output folder exists, deleting... Bundling Meteor App... This command has been deprecated in favor of 'meteor build', which allows you to build for multiple platforms and outputs a directory instead of a single tarball. See 'meteor help build'for more information. meteor bundle generation complete. Finding dependencies... 41 dependencies found. Creating package.json file. package.json file generation complete. Deleting node_modules folders. Demeteorization complete. -----> Caching meteor runtime for future builds -----> Application demeteorized -----> Building dependencies Installing node modules npm WARN package.json e030c09c194f4993edd32cbaecb751e5@0.0.1 No repository field. npm WARN package.json e030c09c194f4993edd32cbaecb751e5@0.0.1 No README data > fibers@1.0.5 install /build/e030c09c194f4993edd32cbaecb751e5/node_modules/fibers > node ./build.js `linux-x64-v8-3.14` exists; testing Binary is fine; exiting methods@0.0.1 node_modules/methods uid2@0.0.2 node_modules/uid2 inherits@2.0.1 node_modules/inherits stream-counter@0.1.0 node_modules/stream-counter cookie-signature@1.0.1 node_modules/cookie-signature pause@0.0.1 node_modules/pause range-parser@0.0.4 node_modules/range-parser isarray@0.0.1 node_modules/isarray fresh@0.2.0 node_modules/fresh string_decoder@0.10.31 node_modules/string_decoder qs@0.6.5 node_modules/qs bytes@0.2.0 node_modules/bytes mongodb-uri@0.9.7 node_modules/mongodb-uri buffer-crc32@0.2.1 node_modules/buffer-crc32 next-tick@0.1.0 node_modules/next-tick core-util-is@1.0.1 node_modules/core-util-is cookie@0.1.0 node_modules/cookie double-ended-queue@2.1.0-0 node_modules/double-ended-queue send@0.1.4 node_modules/send lru-cache@2.2.4 node_modules/lru-cache underscore@1.5.2 node_modules/underscore mime@1.2.11 node_modules/mime faye-websocket@0.8.1 node_modules/faye-websocket node-uuid@1.4.3 node_modules/node-uuid readable-stream@1.0.33 node_modules/readable-stream event-emitter@0.2.2 node_modules/event-emitter cli-color@0.2.3 node_modules/cli-color nan@1.5.1 node_modules/nan semver@4.1.0 node_modules/semver debug@2.2.0 node_modules/debug └── ms@0.7.1 memoizee@0.2.6 node_modules/memoizee sockjs@0.3.11 node_modules/sockjs websocket-driver@0.5.4 node_modules/websocket-driver └── websocket-extensions@0.1.1 connect@2.9.0 node_modules/connect bson@0.2.18 node_modules/bson fibers@1.0.5 node_modules/fibers es5-ext@0.9.2 node_modules/es5-ext useragent@2.0.7 node_modules/useragent source-map-support@0.2.8 node_modules/source-map-support └── source-map@0.1.32 (amdefine@0.1.0) multiparty@2.1.8 node_modules/multiparty mongodb@1.4.32 node_modules/mongodb -----> Checking startup method Procfile created during build -----> Finalizing build Creating runtime environment Cleaning npm artifacts Cleaning previous cache Caching results for future builds -----> Build succeeded! e030c09c194f4993edd32cbaecb751e5@0.0.1 /build/e030c09c194f4993edd32cbaecb751e5 ├── bson@0.2.18 ├── buffer-crc32@0.2.1 ├── bytes@0.2.0 ├── cli-color@0.2.3 ├── connect@2.9.0 ├── cookie@0.1.0 ├── cookie-signature@1.0.1 ├── core-util-is@1.0.1 ├── debug@2.2.0 ├── double-ended-queue@2.1.0-0 ├── es5-ext@0.9.2 ├── event-emitter@0.2.2 ├── faye-websocket@0.8.1 ├── fibers@1.0.5 ├── fresh@0.2.0 ├── inherits@2.0.1 ├── isarray@0.0.1 ├── lru-cache@2.2.4 ├── memoizee@0.2.6 ├── methods@0.0.1 ├── mime@1.2.11 ├── mongodb@1.4.32 ├── mongodb-uri@0.9.7 ├── multiparty@2.1.8 ├── nan@1.5.1 ├── next-tick@0.1.0 ├── node-uuid@1.4.3 ├── pause@0.0.1 ├── qs@0.6.5 ├── range-parser@0.0.4 ├── readable-stream@1.0.33 ├── semver@4.1.0 ├── send@0.1.4 ├── sockjs@0.3.11 ├── source-map-support@0.2.8 ├── stream-counter@0.1.0 ├── string_decoder@0.10.31 ├── uid2@0.0.2 ├── underscore@1.5.2 ├── useragent@2.0.7 └── websocket-driver@0.5.4 ----- Procfile declares types -> web Build complete, shipping your container... Waiting for your application to boot... To git@scalingo.com:myapplication.git * [new branch] master -> master Camilas-MacBook-Pro:myapplication camilamacedo$
Voilà! Your app is available under https://myapplication.scalingo.io .