Meteor : How to deploy meteor application in Scalingo ?

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.

Screen Shot 2015-05-18 at 8.39.04 AM

3 – Create a new application in your scalingo to do the deploy:

Screen Shot 2015-05-18 at 8.41.00 AM

Screen Shot 2015-05-18 at 8.41.27 AM

Screen Shot 2015-05-18 at 8.41.37 AM

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 .

Screen Shot 2015-05-18 at 8.53.03 AM

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s