Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
PaaSとGoogleサービスとアルクマで遊ぶ
Search
thinkAmi
February 16, 2013
Programming
570
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PaaSとGoogleサービスとアルクマで遊ぶ
NSEG #36にて発表したときのスライドです。
thinkAmi
February 16, 2013
More Decks by thinkAmi
See All by thinkAmi
知ろう!使おう!HDF5ファイル!/pycon-jp-2019-talk
thinkami
5
11k
Djangoでのメール送信 - 設定からテストまで/djangocongress-jp-2019-talk
thinkami
1
13k
Django・WSGIミドルウェア入門/django-congress-jp-2018-talk
thinkami
4
5.6k
自分のための機械学習をしてみた話
thinkami
0
690
Xamarinで作るAndroid Wearアプリ
thinkami
1
2.8k
FluentMigratorでDBマイグレーション
thinkami
0
2.3k
デプロイボタンを使ってみた
thinkami
0
1.1k
Vagrant + Berkshelf でお手軽写経環境構築
thinkami
1
1.4k
Twilio入門
thinkami
0
1.7k
Other Decks in Programming
See All in Programming
contenteditable と日本語入力に向き合う
colorful12
0
190
パスワード再設定メールのURLについて知っておこう
uyuki234
0
150
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
360
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
250
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
170
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
290
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
470
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
370
Event is what happens
moro
2
440
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1k
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
340
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Rails Girls Zürich Keynote
gr2m
96
14k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Leo the Paperboy
mayatellez
10
2.4k
Designing Experiences People Love
moore
143
24k
How to build a perfect <img>
jonoalderson
1
6.1k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.2k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
440
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
330
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
530
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 はいろいろある > 個人でもいろいろと遊べる > アルクマ画像の利用 ...