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
Capistrano
Search
Saugat Acharya
March 23, 2016
Technology
0
59
Capistrano
Automated deployments with Capistrano (Internal Talk at Leapfrog Technology)
Saugat Acharya
March 23, 2016
Tweet
Share
More Decks by Saugat Acharya
See All by Saugat Acharya
5-min-introduction-to-ASTs-in-javascript.pdf
mesaugat
0
190
Embracing Open Source
mesaugat
0
82
Why to JavaScript in 2018?
mesaugat
0
730
Asynchronous JavaScript
mesaugat
0
120
Other Decks in Technology
See All in Technology
Pythonで構築する全国市町村ナレッジグラフ: GraphRAGを用いた意味的地域検索への応用
negi111111
5
1.4k
サブドメインテイクオーバー事例紹介と対策について
mikit
16
7.6k
Playwrightで始めるUI自動テスト入門
devops_vtj
0
190
AIで急増した生産「量」の荒波をCodeRabbitで乗りこなそう
moongift
PRO
0
590
龍昌餃子で理解するWebサーバーの並行処理モデル - 東葛.dev #9
kozy4324
1
120
隙間ツール開発のすすめ / PHP Conference Fukuoka 2025
meihei3
0
120
Snowflakeとdbtで加速する 「TVCMデータで価値を生む組織」への進化論 / Evolving TVCM Data Value in TELECY with Snowflake and dbt
carta_engineering
1
170
設計は最強のプロンプト - AI時代に武器にすべきスキルとは?-
kenichirokimura
1
180
データエンジニアとして生存するために 〜界隈を盛り上げる「お祭り」が必要な理由〜 / data_summit_findy_Session_1
sansan_randd
1
990
今から間に合う re:Invent 準備グッズと現地の地図、その他ラスベガスを周る際の Tips/reinvent-preparation-guide
emiki
1
310
GTC 2025 : 가속되고 있는 미래
inureyes
PRO
0
160
ピープルウエア x スタートアップ
operando
3
3.5k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Being A Developer After 40
akosma
91
590k
A designer walks into a library…
pauljervisheath
209
24k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
970
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Practical Orchestrator
shlominoach
190
11k
Transcript
Deployment So#ware deployment is all of the ac5vi5es that make
a so#ware system available for use: • Copy/clone code • Run composer, npm, gulp • Run migra6ons • Reload the web server • No6fy about the deployment
Deployment Goals
1. One-click/command Deployment
2. Any'me/anywhere (Anyone with permission)
3. Zero Down+me Deployment
4. Reliable Rollbacks
5. Repeatable
6. Scalable
Why automated deployments?
1. Less error-prone Just run this command they said. It’s
straigh5orward they said. It can’t go wrong they said.
2. More (me for developing so3ware and less (me doing
stuff like this...
3. Release more frequently
A remote server automa,on and deployment tool wri4en in Ruby.
h"p:/ /capistranorb.com/
• Uses SSH • Does everything in parallel • Supports
Git, SVN, Mercurial • Easy to integrate with PHP projects • Mostly used with rails projects
Requirements • Ruby >= 1.9.3 • SSH access to all
servers with public keys (recommended)
Terminologies • Task • Recipe • Namespace • Role •
Stages
Task A concrete set of commands to execute.
Recipe A collec'on of tasks.
Namespace Organizes tasks within recipes and avoids naming collisions.
Role Servers can have different roles like: app, demo, web
Stages Refers to different set of environments (servers): dev, uat,
qa, staging, produc9on Can also include configura0on per stage or even different tasks.
Other Alterna+ves • Fabric - Python • Mina - Ruby
• Rocketeer - PHP • Shipit - Javascript • Deployer - PHP • CI Services like Travis CI, Circle CI, Jenkins
Demo
Thank you Let's hope your deployments won't be like this
from now on.