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
ZappaでDBもパッケージしたサーバーレスAPIを構築してみた
Search
Yasunori Kirimoto
May 11, 2019
Technology
0
390
ZappaでDBもパッケージしたサーバーレスAPIを構築してみた
PyCon mini Sapporo 2019 発表資料
Yasunori Kirimoto
May 11, 2019
Tweet
Share
More Decks by Yasunori Kirimoto
See All by Yasunori Kirimoto
MapLibreとAmazon Location Service
dayjournal
1
210
AWS re:Invent 2023 現地での体験
dayjournal
1
580
英語が苦手でも世界にアウトプットしている話
dayjournal
3
1.4k
FOSS4GとAmazon Location Serviceの親和性
dayjournal
0
560
MIERUNEの組織とカルチャー
dayjournal
0
200
AWSにおける地理空間情報活用
dayjournal
0
480
FOSS4Gカルチャーとクラウド
dayjournal
0
480
Introduction to Amazon Location Service
dayjournal
0
450
AWSではじめる位置情報アプリケーション
dayjournal
1
1.1k
Other Decks in Technology
See All in Technology
[PyconUS 2024] Having fun with Pydantic and pattern matching
enforcerpl
0
190
QAエンジニアが伝えたい品質保証の羅針盤 / Compass for Quality Assurance
mii3king
2
340
ハードウェアを動かすTypeScriptの世界
9wick
3
1.2k
データ基盤を支える技術
chanyou0311
5
3k
[2024년 5월 세미나] 생성형 AI와 함께하는 데이터 분석가 커리어
datarian
0
1.2k
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
37k
Password cracking: past, present, future
openwall
0
280
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
130
エムスリーマルチデバイスチーム紹介資料 / Introduction of M3 Multi Device Team
m3_engineering
1
170
「知的単純作業」を自動化する、地に足の着いた大規模言語モデル (LLM) の活用
nrryuya
8
8.3k
Databricksの生成AI戦略
taka_aki
1
370
Prisma ORMを2年運用して培ったノウハウを共有する
tockn
19
5.1k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
23
1.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.7k
Unsuck your backbone
ammeep
664
57k
Become a Pro
speakerdeck
PRO
13
4.6k
The Brand Is Dead. Long Live the Brand.
mthomps
49
30k
YesSQL, Process and Tooling at Scale
rocio
165
13k
Docker and Python
trallard
35
2.7k
Gamification - CAS2011
davidbonilla
77
4.6k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Producing Creativity
orderedlist
PRO
338
39k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
12
1.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
22
1.6k
Transcript
ZappaでDBもパッケージした サーバーレスAPIを構築してみた Yasunori Kirimoto 2019.05.11 PyCon mini Sapporo 2019
GIS engineer, Web engineer dayjournal : Self-employed Yasunori Kirimoto MIERUNE
Inc. : Co-founder
技術書典6で本だしました
Contents はじめに 環境構築 API開発 デプロイ 実装例
Introduction はじめに
Zappaを知っている方いますか
Zappaとは、AWSのLambdaやAPI Gateway等の サービスを利用し、Webアプリケーションを手軽に 構築できるPythonのサーバーレスフレームワーク
住所検索API
CHAPTER01 環境構築
: Pythonの仮想環境構築ツール pyenv virtualenv AWS CLI 事前準備 インストール & 設定
: Pythonのバージョン切り替えツール : AWSのコマンドラインツール
仮想環境構築
パッケージインストール
パッケージインストール
パッケージインストール
CHAPTER02 API開発
: API用のPythonファイル db.sqlite app.py API配信用ファイル一覧 : 住所検索用のSQLiteファイル
db.sqlite ・DBもパッケージしたAPIを構築するためSQLiteを利用 ・国土地理院の「住居表示住所」データを利用 ※ 電子国土基本図(地名情報)「住居表示住所」データを利用するためには、 国土地理院へ利用申請が必要です。
app.py
app.py
ローカル環境確認
ローカル環境確認
CHAPTER03 デプロイ
デプロイ環境構築
zappa_settings.json
デプロイ
デプロイ
デプロイ
デプロイ Lambda
デプロイ API Gateway
削除 & 更新 & ログ
その他設定
CHAPTER04 実装例
を利用した位置情報の可視化 フロントエンドとの連携 Angular を利用したリスト表示
Angularを利用したリスト表示
None
Angular CLI & 環境設定 ・Angular v7.2.0 ・Angular Material v7.3.7 ・TypeScript
v3.2.2 事前準備 インストール & 設定
変更ファイル一覧
/src/app/app.module.ts
/src/environments/environment.ts /src/environments/environment.prod.ts
/src/app/service/config.service.ts
/src/app/app.component.ts
/src/app/app.component.html
build dev
を利用した位置情報の可視化
Maptiles by MIERUNE, under CC BY. Data by OpenStreetMap contributors,
under ODbL.
事前準備 インストール & 設定 mapboxgljs-starter https://github.com/dayjournal/mapboxgljs-starter Install package
変更ファイル一覧
/_resouce/js/script.js
/_resouce/js/script.js
/_resouce/js/script.js
build dev
Conclusion まとめ
・Zappaで手軽にサーバーレスが可能 ・オプション以上の設定は別の方法を検討 ・DBのパッケージも可能(容量制限250MB) ・地図の可視化にも利用可能
@dayjournal_nori ありがとうございました!