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
PaaSとGoogleサービスとアルクマで遊ぶ
Search
thinkAmi
February 16, 2013
Programming
0
550
PaaSとGoogleサービスとアルクマで遊ぶ
NSEG #36にて発表したときのスライドです。
thinkAmi
February 16, 2013
Tweet
Share
More Decks by thinkAmi
See All by thinkAmi
知ろう!使おう!HDF5ファイル!/pycon-jp-2019-talk
thinkami
4
11k
Djangoでのメール送信 - 設定からテストまで/djangocongress-jp-2019-talk
thinkami
1
12k
Django・WSGIミドルウェア入門/django-congress-jp-2018-talk
thinkami
4
5.3k
自分のための機械学習をしてみた話
thinkami
0
630
Xamarinで作るAndroid Wearアプリ
thinkami
1
2.7k
FluentMigratorでDBマイグレーション
thinkami
0
2.2k
デプロイボタンを使ってみた
thinkami
0
1k
Vagrant + Berkshelf でお手軽写経環境構築
thinkami
1
1.4k
Twilio入門
thinkami
0
1.6k
Other Decks in Programming
See All in Programming
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
2
200
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
330
CSS Linter の現在地 2025年のベストプラクティスを探る
ryo_manba
10
3k
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
12
4.8k
Go Conference 2025: Goで体感するMultipath TCP ― Go 1.24 時代の MPTCP Listener を理解する
takehaya
7
840
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
5.7k
AccessorySetupKitで実現するシームレスなペアリング体験 / Seamless pairing with AccessorySetupKit
nekowen
0
190
CSC305 Lecture 01
javiergs
PRO
1
380
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
17
9.5k
Swiftビルド弾丸ツアー - Swift Buildが作る新しいエコシステム
giginet
PRO
0
1k
API Platform 4.2: Redefining API Development
soyuka
0
700
iOSDC.pdf
chronos2500
2
570
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
The Power of CSS Pseudo Elements
geoffreycrofte
78
6k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
GraphQLとの向き合い方2022年版
quramy
49
14k
Transcript
PaaS と Google サービスと アルクマで遊ぶ NSEG #36 2013.2.16 @thinkAmi
自己紹介 > @thinkAmi > hatena id:thinkAmi > 信州 > C#,
Python, Ruby > 自社インフラ管理 > NSEG, GDG 信州
アルクマ > いいですね!
アルクマのいいところ > スケジュールが公開されている > どこにいるかも公開されている > いろいろと遊べそう
2012 年、年末 > アルクマで、 3 回遊びました > Google サービス縛り >
Advent Calendar in 信州松本(だけじゃなくて もいいよ) http://atnd.org/event/ac2012matsumoto
遊び方 > アルクマのスケジュールをもとに、 位置を Google マップ上にマッピング > アルクマの画像使用ライセンスが 不明なため、シナノゴールド で代替
遊んだ時に使ったもの > Google App Engine (GAE) for Python(webapp2) > Google
Apps Script (GAS) > Google Calendar > Google Cloud SQL > Google Drive > Google Map
構成 - その 1 > GAS の Xml で、スケジュール解析・保存 >
GAE で、 GAS の ContentService と JSONP
結果 - その 1 >
構成 - その 2 > GAE(Python の lxml) で、 スケジュール解析して
CloudSQL へ保存 > GAS で、 CloudSQL よりデータ取り出し > GAS の HTMLService で、表示
結果 - その 2 > 公開停止中! > Google Cloud SQL
の課金が始まる前に、 忘れないように停止させました > すみません ...
構成 - その 3 > GAE で、 Google Calendar よりデータ取得
> GAE で、 Google Drive API を使って、 Google Drive に HTML ファイルを作成 > Google Drive の HTML ファイルを公開
結果 - その 3 > マーカーが ...( 以前はできてたはず ...)
詳しくは > 以下でソースコードを公開しています > https://github.com/thinkAmi/ac2012matsumoto
2013 年 > 他の PaaS > 新しい言語 > で、やってみたい
PaaS で有名なところ > Google App Engine > Heroku > Windows
Azure > Engine Yard > ...
NSEG #21 クラウド
個人でも遊びやすい PaaS > 個人でも使いやすい価格 ( ある程度までは、フリー ) > フリーでも、いわゆる DB
が使える > フリーでも、独自ドメインが使える > 独自ドメインでなくても、 SSL が使える > デプロイが簡単 > いろいろとアドオンあり
取り上げる PaaS > Google App Engine > Heroku > cloudControl
> AppFog
Google App Engine > https://appengine.google.com/ > 言語: Java,Python,Go > フリーの
DB: BigTable > インフラ: Google > 日本語の情報:多い > Google のサービスを利用しやすい
Google App Engine - Dashboard
Google App Engine - デプロイ > ランチャー (GUI) で「 Deploy
」 * コマンドラインからも可能です
Heroku > http://www.heroku.com/ > 言語: Java,Python,Ruby,JRuby,Node,Clojure,Scala > フリーの DB: PostgreSQL
> インフラ: Amazon Web Service (AWS) > アドオン : 外部提供 > 日本語の情報:多い
Heroku - Dashboard
Heroku - デプロイ > Git を使う git push heroku master
cloudControl > https://www.cloudcontrol.com > 言語: Java,Python,Ruby,PHP > フリーの DB: MySQL
> インフラ: AWS > アドオン : 外部提供 > 日本語の情報:少ない (PHP メイン )
cloudControl - Dashboard
cloudControl - デプロイ > まず、 Git リポジトリを作成 > 次に、専用ツールにて cctrlapp
<your app>/<deployment> push cctrlapp <your app>/<deployment> deploy
AppFog > https://www.appfog.com/ > 言語: Java,Python,Ruby,Node,PHP, .NET > フリーの DB:
MySQL,PostgreSQL,MongoDB,RabbitMQ,Redis > インフラ : (Cloud Foundry) AWS,HP OpenStack,WindowsAzure,Rackspace > アドオン : 外部提供 > 日本語の情報:少なめ (PHP メイン )
AppFog - Dashboard
AppFog - デプロイ > 専用ツール af より af push <your
app> > Git なし
今回のデプロイ先 > cloudControl > AppFog
cloudControl と AppFog 共通の言語 > 2012 年でやった、 Python 以外 >
選択肢 Java, Ruby, PHP
今回の言語 > Ruby
はじめる前に ... > 今までは、 GAE や GAS を動かしている Google アカウントで、
Google API を利用 > 何が問題か?
アカウント認証の問題 > Google の API を利用するため、 PaaS に Google アカウント情報を渡す
↓ いろいろと心配 ↓ なにか良い方法はないか ...
どうしたか > API 利用に、 Service account を使う > 参考: すぎゃーんメモ -
Heroku 上から Service Account 認証で Google API にアクセスする http://d.hatena.ne.jp/sugyan/20130112/1357996092
構成 > Ruby + Sinatra > アルクマカレンダーを解析 Nokogiri > Google
カレンダーへの保存・取得 google-api-ruby-client
できたもの - cloudControl 版 > http://arukumapnseg.cloudcontrolled.com/
できたもの - AppFog 版 > http://arukumapnseg.aws.af.cm/
まとめ > PaaS はいろいろある > 個人でもいろいろと遊べる > アルクマ画像の利用 ...