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
docker-composeを使って開発とデプロイしてみた / deploy with doc...
Search
かとまさ
July 05, 2019
Technology
1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
docker-composeを使って開発とデプロイしてみた / deploy with docker-compose
かとまさ
July 05, 2019
Other Decks in Technology
See All in Technology
Incremental HTTP
kazuho
5
2.1k
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
510
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
330
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
3.3k
OR学会2026年秋期大会_機械学習と数理最適化の融合による、配合レシピ最適化システム開発事例
brainpadpr
0
110
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
7
2.5k
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
1
680
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
1万名の社員が使う認証基盤で どう信頼性を担保するか?
kairim0
0
220
SREでアラート疲れを 解決しよう!
kairim0
1
220
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
160
会社説明資料
persolserverworks
0
9.6k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Unsuck your backbone
ammeep
672
58k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Writing Fast Ruby
sferik
630
63k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
610
Typedesign – Prime Four
hannesfritz
42
3.2k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
370
Building an army of robots
kneath
307
47k
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で本番にデプロイしてみた まとめ • シングルノードで動かす場合は開発環境と同じように構築できる • 実際の運用でシングルノードで動かすことは......
まとめ • 開発環境を共有するのに適している ◦ 起動までの時間が早い ◦ 手順が簡単 • 開発環境で使うにはいいが、本番環境で使うには色々物足りない ◦
冗長性 ◦ 耐障害性 • 同じファイルで開発環境にも本番環境にも対応できるツール欲しい
ご清聴ありがとうございました