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
Starting MOGOK - やさしい MOGOK の始めかた -
Search
Tomokazu Kiyohara
February 16, 2013
Technology
1
160
Starting MOGOK - やさしい MOGOK の始めかた -
IIJ の Ruby on Rails 向け PaaS である MOGOK の使い方。
Kanazawa.rb #6 (2013/02/16) の発表資料。
Tomokazu Kiyohara
February 16, 2013
Tweet
Share
More Decks by Tomokazu Kiyohara
See All by Tomokazu Kiyohara
Lightning Talk イベント運営を いいがにやりたい
kiyohara
0
10
首負担皆無!ゼログラビティ プログラミングスタイル
kiyohara
0
330
北陸で Ruby なお仕事に携わるための3つの戦略
kiyohara
1
1.6k
Algolia in CAMPFIRE
kiyohara
0
3.5k
地方エンジニアの日常 - 業務からコミュニティ活動まで
kiyohara
0
270
Web to macOS native app
kiyohara
0
360
金沢アプリ開発塾セミナー資料「テストについて」
kiyohara
1
240
Git インフラ選定事例 - 株式会社クルウィットが GitHub を選んだ理由
kiyohara
0
470
ベッドで技術書を快適に読むただひとつの方法
kiyohara
19
23k
Other Decks in Technology
See All in Technology
バクラクのドキュメント解析技術と実データにおける課題 / layerx-ccc-winter-2024
shimacos
2
1.1k
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
Storage Browser for Amazon S3
miu_crescent
1
240
ずっと昔に Star をつけたはずの思い出せない GitHub リポジトリを見つけたい!
rokuosan
0
150
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
3
2.4k
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
17
4.8k
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
210
UI State設計とテスト方針
rmakiyama
2
650
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
260
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
590
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
130
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
290
Featured
See All Featured
A better future with KSS
kneath
238
17k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Making Projects Easy
brettharned
116
5.9k
Agile that works and the tools we love
rasmusluckow
328
21k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
YesSQL, Process and Tooling at Scale
rocio
169
14k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Transcript
2013/02/16 Kanazawa.rb Meetup #6 Starting MOGOK ʙ ͍͞͠ MOGOK ͷ࢝Ί͔ͨ
ʙ
What is
MOGOK ✤ IIJ (Internet Initiative Japan) ͕ఏڙ͢Δ ✤ Ruby on
Rails ΞϓϦέʔγϣϯͷ ✤ ։ൃࢧԉڥͱ࣮ߦڥΛ ✤ ఏڙ͢ΔαʔϏε PaaS (Platform as a Service)
MOGOK ✤ IIJ (Internet Initiative Japan) ͕ఏڙ͢Δ ✤ Ruby on
Rails ΞϓϦέʔγϣϯͷ ✤ ։ൃࢧԉڥͱ࣮ߦڥΛ ✤ ఏڙ͢ΔαʔϏε PaaS (Platform as a Service) !ఏڙ : ࠓͯ͢ແঈ
MOGOK ✤ http://mogok.jp
MOGOK ʢ։ൃࢧԉڥʣ ✤ Web UI ✤ ΞϓϦέʔγϣϯཧ ✤ υΩϡϝϯτɾϑΥʔϥϜ ✤
CLI (gem ͱͯ͠ఏڙ) ✤ Git ϦϙδτϦ (࠷େ 100MB)
MOGOK ʢ࣮ߦڥʣ ✤ Web ✤ 1 process ✤ 400MB memory
✤ 150MB file (w/ gems) ✤ Thin/Ruby 1.9.3/RoR 3.x ✤ *.ruby.iijgio.com ✤ DB ✤ 1 connection ✤ 100MB memory ✤ 100MB data ✤ MySQL 5.5
MOGOK ʢ࣮ߦڥʣ ✤ Web ✤ 1 process ✤ 400MB memory
✤ 150MB file (w/ gems) ✤ Thin/Ruby 1.9.3/RoR 3.x ✤ *.ruby.iijgio.com ✤ DB ✤ 1 connection ✤ 100MB memory ✤ 100MB data ✤ MySQL 5.5 ͍ͣΕ༗ঈϓϥϯ
How to
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
Git ͷಋೖ $ cd <your RoR app dir> $ git
init $ git add . $ git commit -m "first commit"
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
RoRΞϓϦέʔγϣϯͷίϯϑΟάઃఆ ✤ Bundler (Gemfile) ✤ Env (config/environments/production.rb)
Bundler : gem 'mysql2' gem 'therubyracer', :platforms => :ruby $
vim Gemfile ✤ MOGOK ڥͰඞཁͱͳΔ gem Λઃఆ
Env $ vim config/environments/production.rb : config.serve_static_assets = true : ✤
/public/* ͷ static ίϯςϯπΛ༗ޮԽ ✤ (͓ͦΒ͘)͋Β͔͡Ί false ઃఆ͕͋ΔͷͰ true ʹมߋ
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
MOGOK CLI ͷΠϯετʔϧ ✤ gem ϑΝΠϧͷμϯϩʔυ
MOGOK CLI ͷΠϯετʔϧ ✤ gem ϑΝΠϧͷΠϯετʔϧ $ gem install mogok-x.x.x.gem
$ mogok list $ mogok --help ✤ MOGOK ΞΧϯτͷ "ID/Password" ͕ٻΊΒΕΔ ✤ ࠷ॳͷ1ճͷΈ
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
MOGOKͷσϓϩΠ ✤ ΞϓϦέʔγϣϯొ ✤ ࢿࡐͷసૹ ✤ ΞϓϦέʔγϣϯߏங
ΞϓϦέʔγϣϯొ $ mogok create <app name> ✤ RoR app dir
Ͱ࣮ߦ͢Δ͜ͱΛڧ͘ਪ ✤ Git remote ʹ MOGOK ڥ͕ొ͞ΕΔ ※ MOGOK CLI ͜ͷΛࢀর͠ͳ͕Βಈ࡞͢Δ(--app option ͋Δ͕͔ͳΓ໘) ✤ <app name> MOGOKγεςϜશମͰҰҙ ✤ <app name>.ruby.iijgio.com
ࢿࡐͷసૹ $ git push mogok master ✤ MOGOK ΞΧϯτͷ "ID/Password"
͕ٻΊΒΕΔ ✤ ຖճೖྗ͕ඞཁ ✤ "$ git config credential.helper store" ͓ͯ͘͠ͱָ ✤ "~/.git-credentials" ʹอଘ͞ΕΔͷͰѻ͍ʹҙ tips
ΞϓϦέʔγϣϯߏங $ mogok build $ mogok rake db:migrate
Flow ✤ Git ͷಋೖ ✤ RoR ΞϓϦέʔγϣϯͷίϯϑΟάมߋ ✤ MOGOK CLI
ͷΠϯετʔϧ ✤ MOGOK ͷσϓϩΠ ✤ ΞϓϦέʔγϣϯཧ
ΞϓϦέʔγϣϯཧ $ mogok info $ mogok start $ mogok stop
$ mogok restart ✤ MOGOK CLI ͔Βͷૢ࡞
ΞϓϦέʔγϣϯཧ ✤ Web UI ͔Βͷૢ࡞
Conclusion
·ͱΊ ✤ Ruby on Rails ͳ PaaS ✤ !൛͕ͩແྉͰ͔ͳΓͷػೳ͕͑Δ ✤
Git & mogok ίϚϯυͰσϓϩΠ ✤ mogok ίϚϯυ or Web UI Ͱίϯτϩʔϧ
Thank you Tomokazu Kiyohara http://facebook.com/tomokazu.kiyohara http://twitter.com/kiyohara
extra
Bundler tips ✤ ։ൃڥͱMOGOKڥͰґଘ gem Λ͚Δͱศར ✤ ։ൃڥʹ MySQL ͕ೖ͍ͬͯͳ͍ͱ͖ͳͲ
group :mogok do gem 'mysql2' gem 'therubyracer', :platforms => :ruby
end $ vim Gemfile ✤ MOGOK ڥ͚ gem Λ group Խ Bundler tips
: BUNDLE_WITHOUT: mogok $ vim .bundle/config ✤ ։ൃڥͰ bundle command
ͷର֎ʹࢦఆ Bundler tips
✤ config/database.yml ✤ ಛผʹฤू͢Δඞཁͳ͠ ✤ MOGOKڥσϓϩΠ࣌ʹઐ༻ͷͷ͕ར༻͞ΕΔ Env tips
✤ "$mogok build" ͨ͠Β ✤ "$ mogok restart" →× ✤
"$ mogok stop; mogok start" →◦ build & restart tips