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
クラウドに依存しないS3を使った開発術
Search
しめさば
December 13, 2025
Programming
0
220
クラウドに依存しないS3を使った開発術
とあるLT祭で使ったLT資料です
しめさば
December 13, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
450
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
470
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
120
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
3.3k
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
240
Grafana:建立系統全知視角的捷徑
blueswen
0
280
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
770
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
350
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
440
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
300
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
160
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
980
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Paper Plane (Part 1)
katiecoart
PRO
0
2.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
A designer walks into a library…
pauljervisheath
210
24k
Context Engineering - Making Every Token Count
addyosmani
9
590
RailsConf 2023
tenderlove
30
1.3k
Prompt Engineering for Job Search
mfonobong
0
140
Evolving SEO for Evolving Search Engines
ryanjones
0
94
Transcript
クラウドに依存しない S3を使った開発術 しめさば
データ保存先の話 Webのバックエンドが取り扱うデータ →テキスト 例: {“name”: “simesaba”, “age”: “21”} →ファイル 例:
画像とか動画みたいなバイナリ、zipファイルみたいな圧縮ファイルとか
データ保存先の話 Webのバックエンドが取り扱うデータ →テキスト 例: {“name”: “simesaba”, “age”: “21”} データベース →ファイル
例: 画像とか動画みたいなバイナリ、zipファイルみたいな圧縮ファイルとか ???
Amazon S3(Simple Storage Service) オブジェクトという単位でファイルを保存できる 基本クラウドで提供される →お⾦さえ払えば容量の限界は実質ない 互換性のあるサービスがたくさんある
クラウドだからお⾦かかるのかぁ… 案1: C3で契約しているS3で開発も⾏う →主に1年⽣が開発とかで事故ったらいやだ 案2: 開発者は各⾃でS3の⽀払い等を⾏う →開発者に⾦銭的な負担はさせたくない 案3: 開発中はローカルにS3互換の何かしらをたてる →今回の要望にはあってそう
ローカルでS3互換ってたてれんの?
ローカルでS3互換ってたてれんの? いろんなS3互換のやつら
ローカルでS3互換ってたてれんの? 今回採⽤するヤツ
localstac って?
localstac って? AWS上のサービスをローカルで再現できる 再現できるサービス • その他もろもろ EC2 DynamoDB lambda S3
localstac って? S3 今回使うもの
ベースとなるcompose.yaml
今回⽤意したWebサーバー
早速Dockerで… app-network localstack-s3 app
早速Dockerで… app-network localstack-s3 app http://localstack-s3:4566
じゃあホストから app-network localstack-s3 app http://localstack-s3:4566
じゃあホストから app-network localstack-s3 app http://localstack-s3:4566
じゃあホストから app-network localstack-s3 app http://localstack-s3:4566 ※localhostじゃないので
そこ同じURLでやれないの困るな?
None
s3.localhost.localstack.cloud localstackが管理するドメイン 127.0.0.1(localhost)として処理される
改めてホストから app-network localstack-s3 app http://s3.localhost.local stack.cloud:4566
改めてコンテナから app-network localstack-s3 app http://s3.localhost.local stack.cloud:4566
改めてコンテナから app-network localstack-s3 app http://s3.localhost.local stack.cloud:4566 ※名前解決できないので
None
なんて? Dockerネットワークの設定⾃分で追加してね localstackコンテナのIPアドレスを指定しておいてね アプリケーション側のコンテナでDNSサーバーをlocalstackのコンテナに指定す れば localhost.localstack.cloudの宛先をlocalstackのコンテナとして名前解決が できるよ^^
None
今度こそコンテナから app-network 10.0.2.0/24 localstack-s3 10.0.2.20 app http://localhost.local stack.cloud:4566 dnsサーバー そのドメインは10.0.2.20ですね
None
最終的に app-network localstack-s3 app dnsサーバー http://localhost.local stack.cloud:4566 http://localhost.local stack.cloud:4566
None
None
できた!これで開発できる! (データの永続化はサポートされてないので注意しましょう)