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-machineで簡単にデモ環境を構築する、あるいはローカルのリソースを消費し...
Search
yuki-yano
July 02, 2019
Programming
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
docker-machineで簡単にデモ環境を構築する、あるいはローカルのリソースを消費しない開発環境について / Easily build an environment with docker-machine
yuki-yano
July 02, 2019
More Decks by yuki-yano
See All by yuki-yano
Neovimのリモートプラグインとはなんなのか、あるいはTypeScriptでのNeovimプラグイン実装について / Developing Remote Plugin in TypeScript
yuki_ycino
1
1.9k
RPA実行環境のFargateへの移行 / Migrating RPA Infrastructure to Fargate
yuki_ycino
0
6.7k
コンシューマーゲームを操作するプログラマブルコントローラーの作成
yuki_ycino
0
210
Other Decks in Programming
See All in Programming
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
210
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
100
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
140
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
480
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
スマートグラスで並列バイブコーディング
hyshu
0
290
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
130
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
フィードバックで育てるAI開発
kotaminato
1
110
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
840
Webフレームワークの ベンチマークについて
yusukebe
0
200
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
420
Featured
See All Featured
AI: The stuff that nobody shows you
jnunemaker
PRO
8
820
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
230
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
260
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
550
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
270
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
220
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
650
The Language of Interfaces
destraynor
162
27k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
260
The World Runs on Bad Software
bkeepers
PRO
72
12k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
docker-machineͰ؆୯ʹ σϞڥΛߏங͢Δ ͋Δ͍ϩʔΧϧͷϦιʔεΛ ফඅ͠ͳ͍։ൃڥʹ͍ͭͯ Yuki Yano @yuki-ycino
Who is me? ༟थ όοΫΤϯυϝΠϯͷWebΤϯδχΞɻۀͰओʹRails Ͱͷ։ൃΛத৺ʹɺΠϯϑϥϑϩϯτΤϯυͷ։ൃ͠ ͍ͯ·͢ɻ લ৬ؚΊRailsྺ2ఔͰɺͦͷલScalaͳͲͰ։ൃ Λ͍ͯ͠·ͨ͠ɻ
Dockerʹ͍ͭͯɺνʔϜͰͷษڧձطଘڥͷ DockerԽɾΠϝʔδͷվળͳͲʹऔΓΜͩ͜ͱ͕͋Γ ·͢ɻ
Output • Dockerͷجຊʹ͍ͭͯपลڥ·Ͱ·ͱΊ https://qiita.com/yuki_ycino/items/b94ae2bf7d78685cd6f5 • Electron + Vue + flowtypeͰ࠷ߴͷը૾Λऩू͢ΔͨΊͷ
TwitterΫϥΠΞϯτΛ࡞ͬͨ https://qiita.com/yuki_ycino/items/9a2f7feef947c4c258ac • tmuxΛޮΑͬͯ͘։ൃΛരʹ͢Δ࠷ߴͷઃఆ https://qiita.com/yuki_ycino/items/ef5e6b63c8f9af2f03c0
Dockerศར
Dockerศར͚ͩͲ͠ΜͲ͍ • (MacͱWindowsͰ)ಈ࡞͕͍ • Ϧιʔε͕৯ΘΕΔ • ҰൃͰߏஙͰ͖Δ͚Ͳ༁͕͔Βͳ͘ͳͬͨ ͱ͖ʹDockerͷυϝΠϯ͕ࣝඞཁ • ϕετϓϥΫςΟεͱ͍͏໊ͷόουϊϋ
docker-machineΛ͓͏
docker-machineͱ • ԾϚγϯ্ʹDocker EngineΛΠϯετʔϧ ͢Δπʔϧ • ϩʔΧϧͷϚγϯ͚ͩͰͳͯ͘AWS VPS(Digital OceanͳͲ)ର •
ԾϚγϯͷdockerίϚϯυΛಁաతʹ࣮ߦ͢Δ
Կ͕خ͍͠ͷʁ • खݩͰ࣮ߦ͍ͯͨ͠Dockerڥ͕ಉ͡ίϚϯυͰউखʹ Ϋϥυ্Ͱಈ͘ • Docker͕ೖͬͨԾϚγϯ͕EC2্ʹҰൃͰͰ͖Δ • Πϯελϯεͷཧ͕docker-machineίϚϯυͰ؆୯ • खݩͷϚγϯͷϦιʔεΛফඅ͠ͳ͍
• ֎෦͔ΒΞΫηεͰ͖ΔDockerڥΛ؆୯ʹ࡞ΕΔ
͜Μͳײ͡ $ docker-machine create --driver amazonec2 --amazonec2-access-key XXXXXXXX --amazonec2-secret-key XXXXXXXX
--amazonec2-ami ami-06c43a7df16e8213c --amazonec2-instance-type t3.large --amazonec2- region ap-northeast-1 --amazonec2-vpc-id vpc-xxxxxxxx --amazonec2- subnet-id subnet-xxxxxxxx --amazonec2-zone a docker-machine-test $ eval $(docker-machine env docker-machine-test) $ export COMPOSE_FILE=docker-compose-aws.yml $ docker-compose build $ docker-compose up $ docker-machine ssh docker-machine-test -L 3000:localhost:3000 $ docker-machine rm docker-machine-test
BizteXͷ։ൃͰ • productionڥ্ཱ͕͕ͪΔdocker-composeͷ ઃఆϑΝΠϧͱपลεΫϦϓτΛ࡞ • docker-composeίϚϯυΛ࣮ߦ͢Δ͜ͱͰ ҙͷϒϥϯνͷproductionϞʔυʹ͔ࣾΒ ΞΫηεͰ͖Δ
ҙ • EC2Πϯελϯεʹ՝͕ۚൃੜ͢Δ • ϩʔΧϧϑΝΠϧͷVOLUMEΛ͍ͬͯΔͱ جຊతʹμϝ(/home/ubuntuҎԼΛ͏) • ϙʔτΛϚοϐϯάޙʹԾϚγϯ͔Β ϩʔΧϧϚγϯʹϑΥϫʔσΟϯά͠ͳ͍ͱμϝ
։ൃڥͱͯ͠ͷ docker-machine...
େମ͍͚Δ • ϩʔΧϧͷϑΝΠϧΛࢹ͠ͳ͕Βrsync • ։ൃαʔόΛϙʔτϑΥϫʔσΟϯά • /home/ubuntu/appΛvolume େମग़དྷͨ $ fswatch
./ | while read file; do rsync -avzhe 'docker-machine ssh docker-machine-dev' --exclude='node_modules' --progress ./ : ; done $ docker-machine ssh docker-machine-dev -L 3000:localhost:3000
͕͜͜μϝ • EC2্Ͱมߋ͞ΕͨϑΝΠϧΛݕͯ͠ϩʔΧϧ సૹͰ͖ͳ͍ • ͔Γ͍͢ͷͩͱyarn.lockGemfile.lock • ϩʔΧϧͰDockerΛಈ͔͢ΑΓߋʹߟ͑Δ͜ͱ͕ ૿͑Δ •
ೝূωοτϫʔΫؔ࿈ͷઃఆ͕͋Δͱ໘
͏ͪΐͬͱؤுΕͰ͖ͦ͏
σϞ
·ͱΊ • Dockerͱ্खʹ͖߹͓͍͍ͬͯ͠ͱ͜Ζ͚ͩ ͍͍ͨ • docker-machine༥௨͕ޮ͔ͳ͍ͱ͜Ζ͋Δ ͚ͲҰॠͰDockerڥ͕Ͱ͖͍ͯ͢͝ɺศར • ࠓޙͰ͖Εdocker-machineͰ։ൃ͍ͨ͠