Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Deploying Rails apps with Capistrano
Search
Bruno Sutic
October 01, 2014
Technology
0
87
Deploying Rails apps with Capistrano
Bruno Sutic
October 01, 2014
Tweet
Share
More Decks by Bruno Sutic
See All by Bruno Sutic
Readline + irb/pry = <3
brunosutic
0
120
Moreutils
brunosutic
0
45
The venerable "expect"
brunosutic
0
57
Capistrano vs Mina: Capistrano demo talk
brunosutic
0
440
Configuring tmux
brunosutic
0
76
Introduction to Arel
brunosutic
1
230
Tmux osnove
brunosutic
0
170
Other Decks in Technology
See All in Technology
実践Kafka Streams 〜イベント駆動型アーキテクチャを添えて〜
joker1007
0
200
AIのための オンボーディングドキュメントを整備する - hirotea
hirotea
9
2.3k
Eight Engineering Unit 紹介資料
sansan33
PRO
0
3.2k
DevOpsDays Taipei 2025 -- Creating Awesome Change in SmartNews!
martin_lover
0
160
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
24k
プラットフォームとしての Datadog / Datadog as Platforms
aoto
PRO
1
340
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
490
TechBull Membersの開発進捗どうですか!?
rvirus0817
0
200
プロジェクトマネジメント実践論|現役エンジニアが語る!~チームでモノづくりをする時のコツとは?~
mixi_engineers
PRO
3
180
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
2
1.2k
Machine Intelligence for Vision, Language, and Actions
keio_smilab
PRO
0
490
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.3k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Code Review Best Practice
trishagee
68
18k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
840
Statistics for Hackers
jakevdp
799
220k
We Have a Design System, Now What?
morganepeng
52
7.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Ace a Technical Interview
jacobian
276
23k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.3k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Producing Creativity
orderedlist
PRO
346
40k
How GitHub (no longer) Works
holman
314
140k
Transcript
Deploying Rails apps with Capistrano +
About: Bruno Sutic, github.com/bruno-/ Rails & Javascript developer Ideal Project
Group, Chicago Worked on a Capistrano plugins: github.com/capistrano-plugins/
Goals • motivate Rails devs to try Capistrano • make
Capistrano vs Heroku comparison • demo app deployment
What is Capistrano? • Capistrano is a deployment tool. It
gets the app running on the server. • Other deployment strategies: - manual (zip + ftp) - Mina - Heroku - Engine Yard - Docker - Chef, Puppet…
Heroku PROS • Free! • Really simple • Single click
add-ons CONS • Paid plans are expensive • Closed (and expensive) add-on ecosystem • Technical lock-in
Heroku is great, but expensive. Capistrano is the alternative.
What is Capistrano? • Ruby gem • built on top
of ssh and Rake (think tasks) • mature and battle tested v1.1.0 in March 2006 • scalable • technology agnostic: used for deploying apps in Ruby, PHP + other
What Capistrano is *not*? • server installation / provisioning tool
think: `apt-get install nginx` • server configuration tool think: updating IPtables • Chef, Puppet, Ansible are better for these tasks
How does it work? • built on top of `ssh`
$ ssh my_server “echo ‘foo’” $ scp some_file.txt my_server:/dir/
How does it work? $ ssh my_server “git clone github.com/myapp”
$ ssh my_server “service nginx restart” 2) git clone myapp 1) ssh my_server Dev machine Server Git repo (Github)
Capistrano downsides • more work (than i.e. Heroku) • requires
learning • capistrano itself • dev ops: server installation, configuration, hardening • familiarity with ssh
Quiz
Capistrano vs Heroku quiz Situation: • Ruby on Rails beginner
• Created first app for practice How do you deploy?
Capistrano vs Heroku quiz Situation: • Rails dev team •
Long term customer • Big app, will need scaling How do you deploy?
Capistrano vs Heroku quiz Situation: • Experienced Rails dev •
Small app built over the weekend How do you deploy? Both are fine! (it depends )
Demo time
Capistrano demo STEPS 1. make a Rails app ✅ 2.
buy & setup a server ✅ 3. setup Capistrano 4. deploy STACK • Nginx • Unicorn • PostgreSQL
Next steps • www.capistranorb.com • capistrano github • https://gist.github.com/bruno-/9808201