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
開発環境をどっかんどっかん立てる
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Konboi
March 07, 2015
Programming
650
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
開発環境をどっかんどっかん立てる
若手Webエンジニア交流会 #9 の発表資料です
Konboi
March 07, 2015
More Decks by Konboi
See All by Konboi
Java's OOM and k8s' OOM 遭遇した2つのOOMと対策 ~ Launchableでの事例 ~ / JJUG 2025 Spring
konboi
1
480
非同期開発体制を支えるドキュメント文化 / YAPC::Hiroshima 2024
konboi
28
13k
様々な環境へコマンドラインツールを提供する上での苦労とその対策 / YAPC::Kyoto 2023
konboi
0
3.1k
煩雑な運用を Goを使って楽にする / Go Conference 2019 Spring
konboi
4
4.8k
あなたってどんな方(型)?/ kamakura.go#4
konboi
1
710
中規模チームを支える自動化とノウハウ共有の仕組み/CEDEC2017
konboi
8
9.9k
golang tokyo #6 / ゲーム開発には欠かせない?! あれをシュッと見る
konboi
1
7.9k
git-schemlexとddl-makerを使ったDB migrationの紹介 / git-schemalex and ddl-maker migration #golangtokyo
konboi
1
11k
Redisの調査についてとrmlp
konboi
5
5k
Other Decks in Programming
See All in Programming
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
110
sbt 2.0: takeoff
eed3si9n
0
150
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
490
速習iPhone Duo対応
yuukiw00w
2
980
パスワード再設定メールのURLについて知っておこう
uyuki234
0
150
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
990
Jetpack Compose Mechanisms
skydoves
3
800
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
110
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
150
Domain-Driven Transformation
hschwentner
2
2.3k
ジョジョの世界をXRで再現する
mofurune
0
160
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
110
Featured
See All Featured
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
740
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
630
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
Practical Orchestrator
shlominoach
192
12k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Typedesign – Prime Four
hannesfritz
42
3.2k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
410
Transcript
։ൃڥΛ Ͳ͔ͬΜͲ͔ͬΜཱͯΔ @Konboi / एखWebษڧձ #9
ͦ͏ͩμδϟϨͩʂ͓ͬ͞Μͩʂʂ
͘ ! ͍ͨ͠ ·͖ΊͰ͕ΜΓ·͢
ࣗݾհ • @Konboi • ໘ന๏ਓKAYAC • ೖࣾ 3 • ࣗࣾαʔϏε
→ डୗνʔϜ → ήʔϜ։ൃ/ӡ༻ • ͖ͳͷ: ! " • Έ: ݁ࠗࣜͷ2࣍ձͷग़͠ͱ͔ͰἤΒΕΔ
ࠓ͢͜ͱ
docker ! × mirage Λͬͨςετڥߏஙͷ
docker × Non ProductionͷͰ͢
ͦ͏Ͱ͢ʂ ·ͨͰ͢ʂʂ
͓͖߹͍Լ͍͞ !
ήʔϜͷӡ༻͍ͯ͠Δͱ • stgڥ͕ඞཁ • Ϛελʔσʔλௐ༻ͷڥ͕ඞཁ • ৽ػೳ։ൃ༻ͷڥ͕ඞཁ • ΠϕϯτQA༻ʹαʔόʔͷ࣌ؒΛਐΊͨڥ͕ඞཁ •
ਃલͷ݁߹QAڥ͕ඞཁ • ͳͲͳͲ༷ʑͳڥ͕ඞཁʹͳΔ
ࠓ·ͰͲ͏͔ͯͨ͠? • stg + dev01͔ΒdevXX·Ͱ༻ҙ͢Δ • IRCͷBotܦ༝ͰҙͷbranchΛdeploy • ۭ͍͍ͯΔڥΛࣗ༝ʹ͏
͚ͩͲ
΄΅ίϐϖͷconfϑΝΠϧ͕ྔ࢈
• A͞Μ < devAA ͬͯ·͔͢ʁ • B͞Μ < ͋ŊࠓͬͯΔ͔Β devBB
ͬͯΒ͑Δʁ • C͞Μ < ࠓ devBB ͕ࣗͬͯΔʂ • A͞Μ < ɾɾɾ (´ɾωɾʆ)
͜ͷ··Ͱ...
ςετڥͷୣ͍߹͍ʁʂ νʔϜͷงғؾ͕ѱ͘ͳΔʁʂ
ςετڥϚωʔδϟʔ͕ඞཁʹʁʂ
ͩΔ͍ʂʂ
ͪΌΜͱ֬ೝͤͣʹϦϦʔεʁʂ ෆ۩߹͕ग़ͯେมͳ͜ͱʹʁʂ
͜Ε͍ʂʂʂ
͗͢Δʂ
Ͳ͏ͬͯղܾ͔ͨ͠ʁ
docker × mirage Λ༻ͯ͠ղܾ
mirageͬͯʁ
mirageͱ • written by golang acidlemon/mirage • REST/WebͷΠϯλϑΣʔεͰDockerίϯςφΛىಈ/ఀࢭ • αϒυϝΠϯΛࢦఆͯ͠ίϯςφͷϦόʔεϓϩΩγ
• gitͷಛఆͷϒϥϯνͰαʔϏεΛߏՄೳ • GIT_BRANCͰࢦఆͨ͠ϒϥϯν໊औಘՄೳͳͨΊ
None
ͪΐͬͱҙຯ͕...(^_^;)
ͱ͍͏͜ͱͰ
DEMO
༻ํ๏
go get github.com/acidlemon/mirage
mirage --conf config.yml
# config.yml host: webapi: docker.wakateweb.konboi.com reverse_proxy_suffix: .wakateweb.konboi.com listen: foreign_address: 127.0.0.1
http: - listen: 5580 target: 4567 docker: endpoint: unix:///var/run/docker.sock default_image: "wakateweb:latest"
nginx.conf upstream backend_docker { server 127.0.0.1:5580; } server { listen
80; server_name *.wakateweb.konboi.com; access_log /var/log/nginx/access.docker.log ltsv; error_log /var/log/nginx/error.docker.log error; location / { proxy_pass http://backend_docker; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
ͲΜͳdocker image ??
αϯϓϧͪ͜Β Konboi/docker-practice ڥߏஙitamaeΛͬͯΈ·ͨ͠
ϙΠϯτ • go get ͰΠϯετʔϧ͕Φεεϝ • ϦϦʔεύοέʔδΛ͏߹leveldͷΠϯετʔϧ • dockerίϯςφ͋Γ·͢ •
DBผίϯςφ͔RDSΛར༻͢Δͷ͕Φεεϝ • ίϯςφʹ࡞ΔͱআͷࡍʹDBσʔλআ • rackuplisten port ͕ localhostͳͷͰϋϚΓ·͢
·ͱΊ • docker × mirageΛͬͯշదͳڥߏஙΛ • ίϐϖͷΑ͏ͳ.confϑΝΠϧ͕ྔ࢈͞Εͳ͍ • Rest/Webܦ༝ͰߏஙͰ͖ΔͷͰ୭ͰڥߏஙՄೳʹ •
ڥΛୣ͍߹ΘͣʹࡁΈνʔϜͷงғؾ͕ྑ͘ͳΓ·ͨ͠ʂ • ͪΌΜͱνΣοΫͰ͖ΔͷͰόά̌ʂ ࠷ߴͩʂʂ
࠷ޙʹ
KAYACͰ৭ʑ Ͳ͔ͬΜͲ͔ͬΜ͍ͨ͠ ΤϯδχΞΛืूதͰ͢
͝੩ௌ͋Γ͕ͱ͏͍͟͝·͢ !