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
harachan
September 16, 2025
Technology
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
並列開発を支援するツールを作った話
harachan
September 16, 2025
More Decks by harachan
See All by harachan
設計の進め方と 品質特性品質特性
harakeishi
0
1.5k
golang.tokyo発表資料(whrisというコマンドを作った話)
harakeishi
0
61
Other Decks in Technology
See All in Technology
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
220
The future of architectural work
ufried
0
170
"AWSはちょっと苦手"でも大丈夫。AWS Blocks で手軽に作る Flutter のバックエンド #FlutterKaigi
tacck
PRO
0
150
ライフワーク「猫でもわかるDirectConnect」
kentapapa
0
170
Content Mapper APIの応用例~CSS Modules、言語ファイル~
uhyo
2
610
公共分野での生成AI活用
toru_kubota
1
210
攻撃 3 時間 vs 復旧 10 時間。アクセスキー流出の非対称性を体感するために CTF を作った話
kazzpapa3
1
150
Gifu WordPress Meetup #200 に向けて、私たちには何ができるだろうか?/ 2026-11-07 Gifu WordPress Meetup
torounit
0
150
新米を「売り越さない」、Aurora DSQLで作る在庫ゼロ死守の限定ドロップEC
yama3133
0
180
Active Directory と Entra ID のむむむな関係
murachiakira
PRO
3
1.6k
Oracle Database Security 詳細解説
oracle4engineer
PRO
2
260
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
250
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
630
How GitHub (no longer) Works
holman
316
150k
First, design no harm
axbom
PRO
2
1.4k
HDC tutorial
michielstock
2
1k
Music & Morning Musume
bryan
48
7.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
570
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
760
Embracing the Ebb and Flow
colly
88
5.2k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.3k
Transcript
1 ฒྻ։ൃΛࢧԉ͢Δ πʔϧΛ࡞ͬͨ ϩϦϙοϓϜʔϜʔυϝΠϯࣄۀ෦ ݪ ܛ࢜
2 ࣗݾհ ϩϦϙοϓϜʔϜʔυϝΠϯࣄۀ෦ 2020 ৽ଔೖࣾ ݪ ܛ࢜ Keishi Hara •
ϗεςΟϯάαʔϏεΛ࡞ͬͯ·͢ • ઃܭͷΛ͢Δͷ͕͖Ͱ͢ • Go, Rails Λओʹ৮͍ͬͯ·͢ • GoͰcliπʔϧΛ࡞Δͷ͕͖Ͱ͢ • ࠷ۙ whris ͕100starΒ͍خ͍͠ • ϒϩά: yaserarenai.dev • X : @harachan_02206
AIΤʔδΣϯτͬͯ·͔͢ʁ 3
AIίʔσΟϯάΤʔδΣϯτศརʂʂ 4 ϝΠϯλεΫ ςετ࡞ ↓ ࣮ ↓ ςετ αϒλεΫ طଘίʔυͷௐࠪ
& υΩϡϝϯτԽ αϒλεΫ খ͞Ίͷ मਖ਼λεΫ αϒλεΫ ࣍ͷλεΫͷ༧උ ௐࠪ ˍ جຊઃܭॻͷ࡞
AIίʔσΟϯάΤʔδΣϯτศརʂʂ 5 git worktree # ϝΠϯ։ൃσΟϨΫτϦ $ cd path/hoge #
work1 ༻ͷϒϥϯνͱ࡞ۀσΟϨΫτϦΛՃ $ git worktree add ../hoge.work1 -b feature/work1 # work2 ༻ $ git worktree add ../hoge.work2 -b feature/work2 # work3 ༻ $ git worktree add ../hoge.work3 -b feature/work3 # ͦΕͧΕͷϫʔΫεϖʔε͕Ͱ͖͍ͯΔ $ ls -la ../ hoge hoge.work1 hoge.work2 hoge.work3
ฒྻ։ൃͷΓํ 6 • ϙʔτόΠϯσΟϯάͷিಥ ◦ ྫ: ෳͷAPIαʔόʔ͕ಉ͡ :8080 Λୣ͍߹͏ •
ωοτϫʔΫઃఆͷিಥ ◦ ಉ໊͡લͷωοτϫʔΫ͕࡞ΒΕࣦͯഊ͢Δ docker compose ͰෳڥΛ্ཱͪ͛Δͱ…
ฒྻ։ൃͷΓํ 7 • compose.ymlͷमਖ਼ ◦ ຖճஆ͔͍ख࡞ۀͰͷมߋ ◦ compose.ymlͷϙʔτωοτϫʔΫ෦Λڥม͔ΒಡΈࠐΉΑ͏ʹ͢Δ ▪ makeϑΝΠϧͳͲͰڥมΛࣗಈઃఆ
etc… ͔͠͠ɺcompose.ymlͷมߋ͕ࠩͰͯޡcommitͳͲͯ͠͠·͏ ղܾ๏
ͦ͜Ͱ͓͢͢Ίͳͷ͕ʂʂ 8
https://github.com/harakeishi/gopose 9
gopose is ͳʹʁ • ϙʔτিಥͷࣗಈղܾ ◦ γεςϜͰطʹ༻தͷϗετϙʔτͱɺComposeͷॏෳϙʔτΛݕग़͠ɺۭ͍͍ͯΔ ϙʔτࣗಈஔɻ • DockerωοτϫʔΫিಥͷճආ
◦ طଘDockerωοτϫʔΫͷαϒωοτωοτϫʔΫ໊ͱিಥ͢ΔComposeωοτϫʔΫ Λݕग़͠ɺ҆શͳସαϒωοτࣗಈஔɻ • ඇഁյతͳద༻ ◦ ݩͷ docker-compose.yml มߋͤͣɺࠩͷΈΛ docker-compose.override.yml ͱͯ͠ग़ྗ 10
# ϝΠϯ։ൃσΟϨΫτϦ $ cd path/hoge # ϝΠϯͷ։ൃڥΛ্ཱͪ͛ $ docker compose
up -d # αϒλεΫͷϫʔΫεϖʔεʹҠಈ $ cd ../hoge.work1 # goposeͰিಥճආͷoverride.ymlΛ࡞ $ gopose up # αϒλεΫͷ։ൃڥ্ཱͪ͛ $ docker compose up -d goposeͷ͍ํ 11
# Docker Compose Override File # Generated by gopose (Go
Port Override Solution Engine) name: hoge.work1 services: frontend: ports: !override - "8000:80" networks: hoge_net: ipv4_address: 10.20.0.16 backend: ports: !override - "8001:80" networks: hoge_net: ipv4_address: 10.20.0.12 mysql: ports: !override - "8006:3306" networks: hoge_net: ipv4_address: 10.20.0.10 networks: hoge_net: ipam: config: - subnet: "10.20.0.0/24" override.yml͜Μͳײ͡Ͱ͢ 12
• ϙʔτিಥͷࣗಈղܾ a. compose.ymlͷதΛղੳ b. netstat -an ͷ݁ՌΛղੳ c. িಥΛݕ͠ɺoverride.ymlʹॻ͖ग़͠
• DockerωοτϫʔΫিಥͷճආ a. docker network ls/inspect ͰωοτϫʔΫ໊ͱαϒωοτΛऩू b. ComposeͷωοτϫʔΫ͝ͱʹɺ࣮ࡍʹੜ͞ΕΔωοτϫʔΫ໊ʢ-p/--project-name Ͱ͘ ಄ࣙʣͱαϒωοτΛٻΊɺ໊લিಥͱαϒωοτিಥΛݕग़ c. ඞཁ͕͋Ε)ݻఆIP࠶ׂ େ·͔ͳಈ࡞༰ 13
14 Thank you!