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
デプロイについて言いたい1つのこと
Search
yu0819ki
April 12, 2017
Technology
0
470
デプロイについて言いたい1つのこと
・参考リンク
刀狩り for Jenkins
https://speakerdeck.com/yu0819ki/dao-shou-ri-for-jenkins
yu0819ki
April 12, 2017
Tweet
Share
More Decks by yu0819ki
See All by yu0819ki
たまには今日から業務で使える話でもしてみよう
yu0819ki
0
33
推しの成長と発展を寿ぐLT
yu0819ki
1
88
LightningTalkの資料作る時間なかったからおすすめの異世界転生作品を紹介するわ
yu0819ki
2
110
LightningTalkの資料作る時間なかったから カラオケするわ
yu0819ki
0
94
俺と婚活
yu0819ki
2
200
Webシステム不具合調査講座
yu0819ki
1
620
高い学習コストを払ってでも React+Reduxを選ぶその理由
yu0819ki
0
1.2k
やれてなかったからやりたい話
yu0819ki
0
420
刀狩り for Jenkins
yu0819ki
0
630
Other Decks in Technology
See All in Technology
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
3
800
自動テストのコストと向き合ってみた
qa
0
210
JAZUG 15周年記念 × JAT「AI Agent開発者必見:"今"のOracle技術で拡張するAzure × OCIの共存アーキテクチャ」
shisyu_gaku
1
140
AIツールでどこまでデザインを忠実に実装できるのか
oikon48
6
3.1k
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
4
450
"プロポーザルってなんか怖そう"という境界を超えてみた@TSUDOI by giftee Tech #1
shilo113
0
170
OCI Network Firewall 概要
oracle4engineer
PRO
2
7.8k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
9.1k
スタートアップにおけるこれからの「データ整備」
shomaekawa
2
340
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
1
500
AWS Top Engineer、浮いてませんか? / As an AWS Top Engineer, Are You Out of Place?
yuj1osm
2
200
SREとソフトウェア開発者の合同チームはどのようにS3のコストを削減したか?
muziyoshiz
1
210
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
54
3k
Designing for Performance
lara
610
69k
Automating Front-end Workflow
addyosmani
1371
200k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
The Language of Interfaces
destraynor
162
25k
It's Worth the Effort
3n
187
28k
Code Reviewing Like a Champion
maltzj
525
40k
Producing Creativity
orderedlist
PRO
347
40k
Transcript
デプロイについて⾔言いたい1つのこと 2017/04/12 Skill Wednesday yu0819ki@CyberZ
もくじ • じこしょうかい • デプロイとは • デプロイについて⾔言いたい1つのこと • 実例 •
おわりに
じこしょうかい Name: ⽊木村 幸弘 a.k.a yu0819ki Birthday: 1985.08.19
Age: 31 Birthplace: 北海道 Job: 技術戦略室フロントエンド担当 Hobby: ⾳音ゲー、読書、作曲 Motto: パンが無ければ作ればいいじゃない Topics 近々CircleCI と CodeDeployの詳細連携とか、API Gatewayのこととか話します。
デプロイとは Ø ソフトウェアの分野で、開発したソフトウェアを利⽤用できるように 実際の運⽤用環境に展開すること Webアプリケーションにとっては、リモートサーバ上にアプリケー ションを配置し、所定のポート(80, 443, 8080, 9000 など)経由でアク
セスできるようにすることかな。 【主な⼿手順】 1. Gitからソースを落としてくる 2. 何らかのビルドをする 3. リモートサーバに転送する 4. リモートサーバ上の所定の位置に配置する 5. 外部からアクセスできるように起動したりする (1,2はCIサーバ上で⾏行うことが多いかなと思う)
デプロイについて⾔言いたい1つのこと 切り戻し、考えてますか?
実例 • よくないと思う例 • mv /tmp/app/* /var/www/app • 元のソースが消失している •
mv /var/www/app /var/www/app.bk mv /tmp/app/* /var/www/app • ⼀一瞬 /var/www/app が消失しているため、ファイル数が多いとサービスダウンする • cp ‒–rp /var/www/app /var/www/app.bk mv ‒–r /tmp/app /var/www/app • 世代管理が出来ない • ALTER TABLE `̀hoge`̀ CHANGE COLUMN `̀app`̀ `̀apps`̀ [DEFINITION]; • ソースの切り戻しが会ったときに、DBも戻さなきゃいけない
実例 • ⾃自分がよくやる例 • mv ‒–r /tmp/app /var/www/releases/app-‑[commit id] ln
‒–snf /var/www/releases/app-‑[commit id] /var/www/app • シンボリックリンクを張り直すだけでもとに戻るし、即時反映される • ALTER TABLE `̀hoge`̀ ADD COLUMN `̀apps`̀ [DEFINITION]; UPDATE `̀hoge`̀ SET `̀app`̀ = `̀apps`̀; • 作業時にロックかける必要はあるだろうけど、既存ソースでも新規ソースでも動く
おわりに 実例で上げたのは、ディレクトリ/ファイル単位での切り戻し。 実⾏行環境ごと切り戻しができるBlueGreenDeploymentについて も検討しよう。 あと、ビルドとデプロイは分けておくほうが取り回しが楽。
ご静聴ありがとうございました
付録:関連する過去のスライド • ⼑刀狩り for Jenkins https://speakerdeck.com/yu0819ki/dao-‑shou-‑ri-‑for-‑jenkins