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
docker-composeを使って開発とデプロイしてみた / deploy with doc...
Search
かとまさ
July 05, 2019
Technology
2
980
docker-composeを使って開発とデプロイしてみた / deploy with docker-compose
かとまさ
July 05, 2019
Tweet
Share
Other Decks in Technology
See All in Technology
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
170
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
170
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
440
『君の名は』と聞く君の名は。 / Your name, you who asks for mine.
nttcom
1
130
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
290
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
500
M&Aで拡大し続けるGENDAのデータ活用を促すためのDatabricks権限管理 / AEON TECH HUB #22
genda
0
290
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.6k
Building Serverless AI Memory with Mastra × AWS
vvatanabe
1
800
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
120
「もしもデータ基盤開発で『強くてニューゲーム』ができたなら今の僕はどんなデータ基盤を作っただろう」
aeonpeople
0
270
[2025-12-12]あの日僕が見た胡蝶の夢 〜人の夢は終わらねェ AIによるパフォーマンスチューニングのすゝめ〜
tosite
0
220
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
39
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
30
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
How to Ace a Technical Interview
jacobian
281
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
4 Signs Your Business is Dying
shpigford
187
22k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
110
Building the Perfect Custom Keyboard
takai
1
670
Ruling the World: When Life Gets Gamed
codingconduct
0
120
A Soul's Torment
seathinner
1
2k
The browser strikes back
jonoalderson
0
240
Transcript
docker-composeを使って 開発とデプロイしてみた @_katomasa
自己紹介 @_katomasa かとまさ(@_katomasa) • 元ソーシャルゲームエンジニア (現在、無職) ◦ ADHD / ASD
/ うつ病 / 糖尿病 (NEW) の四重苦 ◦ KIDDING KIDというグループ立ち上げる • 興味分野: クラウド、仮想化、SRE、機械学習 • 好きな技術: Python、Docker、kubernetes • 好きな食べ物: 寿司、刺身、肉、サラダ • 嫌いな食べ物: 火の通った魚、コーヒー、炭酸 • Docker歴: 1年弱
アジェンダ • 自己紹介 • docker-compose使って開発してみた • docker-composeで本番にデプロイしてみた • まとめ
まえがき • 今回行ったのは、個人でスキル確認のために作ったサービスなので、お仕事で運 用してるサービスとかでは真似しないでください • Vagrant + Ansibleとかと比較したかったけど時間も知識もなかった • 個人による感想なので、技術的な話は出てきません
docker-compose使って開発してみた docker-composeとは • 複数のコンテナをまとめて管理する仕組み • コンテナ周りの設定を宣言的に定義する • シングルホストマシンで動く docker-compose up
Host Web DB Network Volume ディレクトリ
docker-compose使って開発してみた どんな感じの構成か • nginx ◦ リバースプロキシ ◦ volumeで静的ファイル群をマウント • python
◦ アプリケーション ◦ volumeでアプリケーションコードをマウント • mysql ◦ データベース • redis ◦ キャッシュ ◦ volume
docker-compose使って開発してみた どんなフローで開発したか コードを書く docker-compose restart 動作確認
docker-compose使って開発してみた 良かった点 • 簡単に開発環境を構築できる • volumeとかポートとか、各コンテナで必要な環境変数の設定をまとめて管理できる 点 • コンテナ間ではサービス名をドメインにしてアクセスできるのでIPとか考慮しなくて 楽
◦ DBの中身をGUIクライアントで見たいときは `127.0.0.1`にexposeしたポートでアクセスすればよい • 環境を破棄する時も`docker-compose down`コマンドでまとめて破棄できる
docker-compose使って開発してみた 不満だった点 • コンテナの命名ちゃんとしないと、どのディレクトリか忘れる ◦ もし消してた場合、手動でコンテナとかボリュームを消すことになる
docker-compose使って開発してみた まとめ • 環境構築が簡単 • 作った開発環境の管理、破棄も簡単
docker-composeで本番にデプロイしてみた どんな感じの構成か • Google Compute Engine ◦ 仮想マシン x 1
GCE Web DB Network Volume ディレクトリ
docker-composeで本番にデプロイしてみた 良かった点 • GitとDockerとdocker-composeをインストールしただけで環境を立ち上げられた ◦ ソースをcloneして、docker-compose upしただけ • 開発環境と同じような感覚で本番環境も構築できた
docker-composeで本番にデプロイしてみた 不満だった点 • 全コンテナが同じマシン上で動作する ◦ マシンのリソースが共有されているため、どこかがリソースを食うと全部終わる • docker-compose単体での冗長化は難しそう ◦ 複数マシンで立ち上げてもまとめて管理できるわけではない
◦ サービスごとで何個コンテナを立ち上げるとか指定できない
docker-composeで本番にデプロイしてみた まとめ • シングルノードで動かす場合は開発環境と同じように構築できる • 実際の運用でシングルノードで動かすことは......
まとめ • 開発環境を共有するのに適している ◦ 起動までの時間が早い ◦ 手順が簡単 • 開発環境で使うにはいいが、本番環境で使うには色々物足りない ◦
冗長性 ◦ 耐障害性 • 同じファイルで開発環境にも本番環境にも対応できるツール欲しい
ご清聴ありがとうございました