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
telepresence で始める k8s 時代のローカル開発
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
shiro16
March 29, 2019
Technology
10
5.9k
telepresence で始める k8s 時代のローカル開発
2019.03.29 Cloud Native Meetup Tokyo #7
shiro16
March 29, 2019
Tweet
Share
More Decks by shiro16
See All by shiro16
minne のアーキテクチャの進化とこれから
shiro16
1
3.5k
minne の開発環境の変革と今後
shiro16
0
1.1k
Rails6 upgrade タイムアタック
shiro16
2
2.8k
minne での検索改善の歴史
shiro16
1
2.5k
minne でのハイブリッドクラウド運用
shiro16
1
1.9k
マイクロサービス事始め@技術編
shiro16
0
1.2k
Other Decks in Technology
See All in Technology
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
Evolution of Claude Code & How to use features
oikon48
1
210
OpenClawで回す組織運営
jacopen
2
390
DX Improvement at Scale
ntk1000
2
290
Kaggleで鍛えたスキルの実務での活かし方 競技とプロダクト開発のリアル
recruitengineers
PRO
1
150
Ultra Ethernet (UEC) v1.0 仕様概説
markunet
3
200
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
450
A Gentle Introduction to Transformers
keio_smilab
PRO
1
120
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
130
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
4
1.1k
Windows ネットワークを再確認する
murachiakira
PRO
0
260
Devinを導入したら予想外の人たちに好評だった
tomuro
0
880
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
140
[SF Ruby Conf 2025] Rails X
palkan
2
810
Game over? The fight for quality and originality in the time of robots
wayneb77
1
130
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Building AI with AI
inesmontani
PRO
1
760
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
74
Art, The Web, and Tiny UX
lynnandtonic
304
21k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
120
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Transcript
ޙ౻རത(.01FQBCP *OD $MPVE/BUJWF.FFUVQ5PLZP UFMFQSFTFODFͰ࢝ΊΔ LT࣌ͷϩʔΧϧ։ൃ
νʔϑςΫχΧϧϦʔυ 5PTIJIJSP(PUP!@TIJSP NJOOFࣄۀ෦!(.0ϖύϘ
None
ຊͷ͓ͷ༰ wUFMFQSFTFODFͱ wUFMFQSFTFODFͷ͍ํ wUFMFQSFTFODFΛಋೖ͢ΔࡍͷϋϚΓϙΠϯτ wUFMFQSFTFODFͷॲཧͷྲྀΕ
ຊ͞ͳ͍༰ wLVCFSOFUFTDMVTUFSͷ͓ wLVCFSOFUFTͷجຊతͳ͓ wEPDLFSͷ͍ํ w3BJMTʹ͍ͭͯ wTTIʹ͍ͭͯ
UFMFQSFTFODFͱ
UFMFQSFTFODFͱ w୯ҰͷαʔϏεΛϦϞʔτͷ,VCFSOFUFTΫϥελʹଓ͠ͳ͕Βɺ ͦͷαʔϏεΛϩʔΧϧͰ࣮ߦ͢Δ͜ͱ͕ՄೳʹͳΔ wͦͷαʔϏε͕ΫϥελͷଞͷαʔϏεʹґଘ͍ͯ͠Δ߹Ͱɺ ୯ҰͷαʔϏεͷਝͳϩʔΧϧ։ൃΛߦ͏͜ͱ͕ՄೳʹͳΔ wϩʔΧϧͷ։ൃϚγϯΛ,VCFSOFUFTΫϥελͷҰ෦ͷΑ͏ʹಈ࡞͞ ͤΔ͜ͱ͕ՄೳʹͳΔ
LVCFSOFUFTDMVTUFS NBD
LVCFSOFUFTDMVTUFS UFMFQSFTFODF NBD
Ͳ͏͍͏͕ղܾͰ͖Δ͔ʁ
ղܾͰ͖Δ wJNBHFCVJMEQVTIQPEͷJNBHFߋ৽ͷखؒΛল͘͜ͱ͕Մೳ wϦϞʔτͷ,VCFSOFUFTΫϥελʹଓ͠ͳ͕Β։ൃͰ͖ΔΑ͏ʹͳ ΔͷͰɺϩʔΧϧ͔ΒଞͷαʔϏε ϚΠΫϩαʔϏεతͳଞͷαʔ Ϗε%# ʹଓ͕ՄೳʹͳΔ wLVCFSOFUFTͷαʔϏεͷҰ෦ͱͯ͠ػೳ͢ΔͷͰɺΞΫηεͨ͠ ࡍͷωοτϫʔΫܦ࿏͕΄΅ಉ͡ʹͳΔ
ͭ·Γշదʹ։ൃ͕Ͱ͖Δ
UFMFQSFTFODFͷ͍ํ
લఏ wIUUQ T ͰΞΫηε͕Ͱ͖ΔQPE͕͋Δ wDPOUBJOFS1PSUͰΛ։͚͍ͯΔ w͜Ε3BJMTTFSWFSͷσϑΥϧτͷQPSU͕ͦ͏ͳ͚ͩͰมߋͯ͠ ͳ͍
·ͣJOTUBMM # homebrew Λ͏ $ brew cask install osxfuse $
brew install datawire/blackbird/telepresence # ιʔε͔Β $ git clone
[email protected]
:telepresenceio/telepresence.git $ cd telepresence $ PREFIX=/path/to/install ./install.sh # bin/ ʹͰ͖Δ
UFMFQSFTFODFͷ͍ํͦͷᶃ
ϩʔΧϧͰىಈͨ͠TFSWFSʹ ΞΫηεΛྲྀ͢
ϩʔΧϧTFSWFS # k8s-deployment-name ஔ͖͍͑ͨ deployment ͷ໊લ $ telepresence --swap-deployment k8s-deployment-name
\ --run bundle exec rails s
UFMFQSFTFODFͷ͍ํͦͷᶄ
ϩʔΧϧͰىಈͨ͠EPDLFS্Ͱ ىಈ͍ͯ͠ΔTFSWFSʹΞΫηεΛྲྀ͢
ϩʔΧϧEPDLFS # k8s-deployment-name ஔ͖͍͑ͨ deployment ͷ໊લ $ telepresence --swap-deployment k8s-deployment-name
\ --docker-run --rm -it test-image:0.0.1 bundle exec rails s
ͦͷଞͷ͍ํ
ͦͷଞͷ͍ํ wࠓճհͨͭ͠Ҏ֎ʹLVCFSOFUFTDMVTUFSʹଓͯ͠৭ʑͰ ͖Δ wྫ͑UFMFQSFTFODFSVODVSMIUUQNZTFSWJDFͱΔͱQPE ্ཱ͕͕ͪΓNZTFSWJDFʹΞΫηεͨ݁͠Ռ͕ฦͬͯདྷͨΓ wIUUQTXXXUFMFQSFTFODFJPIPXUPʹશͯ ʁ ॻ͍ͯ͋Δ
ϋϚΓϙΠϯτ
QPSUΛ͍ͬͯΔ߹
QPSUΛ͍ͬͯΔ߹ wUFMFQSFTFODFΛىಈ͢ΔͱରͷQPEͷEFGBVMUͷDPOUBJOFS ͕ஔ͖ΘΔ wஔ͖ΘͬͨDPOUBJOFSͰطʹQPSUΛ༻͍ͯ͠Δҝ DPOUBJOFS1PSUͰΞΫηεΛड͚͍ͯͯͦΕΛϩʔΧϧʹྲྀͦ͏ ͱࢥͬͯग़དྷͳ͍
ղܾํ๏ w͓ͦΒ͘ݱঢ়ແ͍ͷͰҎ֎Λ͏͔͠ͳ͍
QPEʹෳίϯςφ
QPEʹෳίϯςφΛؚΊΔ߹ wUFMFQSFTFODFΛىಈ͢ΔͱରͷQPEͷEFGBVMUͷDPOUBJOFS ͕ஔ͖ΘΔ wͳͷͰEFGBVMUDPOUBJOFSҎ֎ͰDPOUBJOFS1PSUΛͬͯͦͷ QPSUͷ௨৴ΛϩʔΧϧʹஔ͖͑Δͱ͔Ζ͏ͱࢥͬͯग़དྷͳ͍
ղܾํ๏ wૉʹEFGBVMUΛ͍·͠ΐ͏ wTXBQEFQMPZNFOULTEFQMPZNFOUOBNFUBSHFUDPOUBJOFSͷ ܗࣜͰࢦఆՄೳ
EPDLFSΛ͏߹
EPDLFSΛ͏߹ wUFMFQSFTFODFͱ͍͏ΑΓશʹEPDLFSͷ wجຊతʹEPDLFSSVOͷPQUJPOͦͷ··͑Δ wͳͷͰWͱ͔ͰNPVOU͍ͨ͠ w͔͠͠EPDLFSͷNPVOU͍ NPVOU͢ΔTJ[FʹΑΔ
ղܾํ๏ wEPDLFSTZODΛ͏ wDBDIFEPQUJPOΛ͏ wEPDLFSͷϝϞϦׂΓͯΛ૿͢
UFMFQSFTFODFͷॲཧͷྲྀΕ
UFMFQSFTFODFͷॲཧͷྲྀΕᶃ wLVCFDUMWFSTJPODPOpHΛۦͯ͠ઃఆΛऔಘ͢Δ wLVCFDUMDPOUFYUA্هͰऔಘͨ͠DVSSFOUDPOUFYUPSBSHTͷDPOUFYUAHFU OTEFGBVMUͰLTDMVTUFSͱͷૄ௨֬ೝ w˞ҎԼग़ͯ͘ΔLVCFDUMͷPQUJPOʹશͯADPOUFYUIPHF OBNFTQBDFEFGBVMUA͕ண͕͍͘ͷͰলུ wLVCFDUMHFUEFQMPZNFOUPKTPOFYQPSUABSHTͷEFQMPZNFOUAͰ EFQMPZNFOUͷใΛऔಘ
UFMFQSFTFODFͷॲཧͷྲྀΕᶄ wऔಘͯ͠อ࣋ͨ͠EFQMPZNFOUͷEFGBVMUDPOUBJOFSͷใΛॻ͖͑Δ wPQUJPOͰDPOUBJOFSΛࢦఆͨ͠߹ࢦఆ͞ΕͨDPOUBJOFS wॻ͖͑ͨ༰ͰLVCFDUMBQQMZGΛߦ͍ஔ͖͑ΔQPEΛ࡞ wLVCFDUMTDBMFEFQMPZNFOUATXBQEFQMPZFNFOUͷEFQMPZNFOUA SFQMJDBTͰطଘͷQPEΛআ wLVCFDUMQPSUGPSXBSEAஔ͖͑ͨQPEOBNFA w͜ΕͰQPEͷDPOUBJOFSʹTTIͰ͖ΔΑ͏ʹͳΔ
͜͜·ͰઌͰઆ໌ͨ͠ ύλʔϯͷ͍ํͰڞ௨
·ͣϩʔΧϧͰىಈͨ͠ TFSWFSΛ͏߹
ϩʔΧϧTFSWFSΛ͏߹ᶃ wTTI Ұ෦ུ /QUFMFQSFTFODF!3 wTTI Ұ෦ུ /QUFMFQSFTFODF! -3
w্هΛߦ͏͜ͱͰQPEͱͷํͷΞΫηεΛՄೳʹ͍ͯ͠Δ
ϩʔΧϧTFSWFSΛ͏߹ᶄ wߋʹTTIVUUMFUFMFQSFTFODFͱ͍͏πʔϧ TTIVUUMFΛ UFMFQSFTFODF༻ʹΧελϚΠζͨ͠ͷ ΛͬͯLVCFSOFUFT্ ͷଞͷαʔϏεͷΞΫηεΛՄೳʹ͍ͯ͠Δ
࣍ʹϩʔΧϧͰىಈͨ͠ EPDLFSΛ͏߹
ϩʔΧϧEPDLFSΛ͏߹ᶃ wTTI Ұ෦ུ /QUFMFQSFTFODF! -3 wEPDLFSSVOͰEBUBXJSFUFMFQSFTFODFMPDBMΛͬͯEPDLFS DPOUBJOFSΛ্ཱͪ͛Δ w͜ͷDPOUBJOFSQSPYZ༻Ͱ͜ͷޙʹىಈ͢ΔDPOUBJOFSͱQPE Λͭͳׂ͙Λ͍ͯ͠ΔΑ͏Ͱ͢ɻ
ϩʔΧϧEPDLFSΛ͏߹ᶄ wTTI Ұ෦ུ /QSPPU!3 wTTI Ұ෦ུ /QUFMFQSFTFODF!3
wEPDLFSSVOҎ߱ͷΦϓγϣϯΛࢦఆͯ͠࠷ऴతʹΞΫηεΛྲྀ͢ EPDLFSDPOUBJOFSΛىಈ͢Δ
࠷ޙʹ
ͱΓ͋͑ͣͲΜͳײ͔͡ࢼ͍ͨ͠ਓ͚
ͱΓ͋͑ͣࢼ͍ͨ͠ wIUUQTHJUIVCDPNUFMFQSFTFODFJPUFMFQSFTFODFUSFF NBTUFSFYBNQMFTHVFTUCPPL w্هʹ(,&༻ͷॾʑ͕͋ΔͷͰࢼͤͦ͏ ˞ࣗ(,&ͬͯͳ ͍ͷͰࢼͯ͠ͳ͍ wIUUQTHJUIVCDPNTIJSPUFMFQSFTFODFFYBNQMFT wͪ͜ΒͰ͓खܰʹ͓ࢼ͍͚ͨͩ͠·͢ɻ
Ҏ্UFMFQSFTFODFͷհͰͨ͠
͋Γ͕ͱ͏͍͟͝·ͨ͠