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
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
Search
Shoma Okamoto
November 28, 2025
Programming
2.7k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
Shoma Okamoto
November 28, 2025
More Decks by Shoma Okamoto
See All by Shoma Okamoto
2ヶ月で新規事業のシステムを0から立ち上げるスタートアップの舞台裏
shmokmt
0
950
vscodemeetup
shmokmt
1
350
Other Decks in Programming
See All in Programming
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
560
週末にAI-DLCを本気で回したら$1,600溶けた
hbashimizu
0
130
Deep dive into the select statement (GopherCon UK)
jespino
0
170
異なる設計思想のフレームワークを経験して得た学び
amekuhideki
2
1.5k
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
270
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
210
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
330
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
130
[DroidKaigi 2026] Bring your own phones to Gradle Managed Devices
f2lk
0
110
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
140
MySQLとPostgreSQLって何が違うの?
akagami
PRO
0
160
typoなんかねぇよ
raspython3
0
660
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
490
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Typedesign – Prime Four
hannesfritz
42
3.2k
Un-Boring Meetings
codingconduct
0
410
Product Roadmaps are Hard
iamctodd
55
13k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
330
Google's AI Overviews - The New Search
badams
0
1.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Optimising Largest Contentful Paint
csswizardry
37
3.9k
A Soul's Torment
seathinner
7
3.5k
Transcript
ෳਓͰͷCLI / Infrastructure as Code ͷΒ͠Λྑ͘͢Δ Shoma Okamotoʢ@shmokmtʣ Terminal Night
#1 2025-11-28 
4NBSU#BOL *OD 4PGUXBSF&OHJOFFS43& 4IPNB0LBNPUP !TINPLNU !TINPLNU 4QFBLFS
*OUSPEVDUJPO 🧑🧒🧒 ෳਓͰಉ͡$-*πʔϧΛӡ༻͢Δͷ݁ߏΘ͍͠ʢͱ͖͋Δʣ 💪 νʔϜʹඞཁͳճΓʢ$-*πʔϧʣͷڥΛಓʹ͑Δͱ շదͳΒ͠ΛૹΔ͜ͱ͕Ͱ͖Δ ࠓճͷτʔΫ Β͕͠ྑ͘ͳΔ˺ࣗͨͪͷखݩͷڥ͕͍ɺ࡞ۀ͘͢͠ͳΔ͜ͱ
εϚʔτόϯΫͷ43&ͷٕज़ελοΫʢݴޠɺ$-*πʔϧʣ w 5FSSBGPSNʢ*OGSBTUSVDUVSFBT$PEFʣ w 1ZUIPO w "QBDIF"JS fl PX
"84-BNCEBͳͲͰ༻ w #BTIʢγΣϧεΫϦϓτʣ w "84$PEF#VJMEʢCVJMETQFDZNMʣͳͲͰ࣌ંग़ͯ͘Δ
εϚʔτόϯΫͷ43&ͷٕज़ελοΫʢݴޠɺ$-*πʔϧʣ ɾUFSSBGPSNίϚϯυΛසൟʹखݩͰଧͭ ɾWBMJEBUF GNUͰߏจνΣοΫϑΥʔϚοτͰ͖Δͷͷ ҎԼͷΑ͏ͳ$-*πʔϧΛΈ߹ΘͤΔ͜ͱ͕ଟ͍ ɾU fl JOU ɾUSJWZ
5FSSBGPSN
εϚʔτόϯΫͷ43&ͷٕज़ελοΫʢݴޠɺ$-*πʔϧʣ w Ҏલ֤ʑͷ5FSSBSGPSNͳͲͷόʔδϣϯ͕Ұகͯ͠ͳ͍͜ͱ͕ଟ͔ͬͨ w )PNFCSFXͳͲͰదͳόʔδϣϯΛΠϯετʔϧ w ࣌ંɺτϥϒϧγϡʔτͰফ͢Δ w UGFOWɺUFOWͳͲͬͯͳ͔ͬͨ
w ਖ਼֬ʹख͕ճͬͯͳ͔ͬͨ
εϚʔτόϯΫͷ43&ͷٕज़ελοΫʢݴޠɺ$-*πʔϧʣ w ӡ༻पΓͷࡶଟͳ$-*πʔϧಉ͡όʔδϣϯͷͷΛ͍͍ͨ w BDUJPOMJOU w (JU)VC"DUJPOTͷXPSL fl PXϑΝΠϧͷMJOUFS
w FDTQSFTTP w "NB[PO&$4ͷσϓϩΠπʔϧ w 1ZUIPOΛॻ͘ͷʹඞཁͳπʔϧ܈ w ϢχοτςετΛ࣮ߦͤͨ͞ΓɺMJOUFSͷ͜ͱΛߟ͑Δͱ৭ʑཉ͘͠ͳΔ
͔Ε͜Ε͍ͯ͠Δʹ %FWJOɺ$MBVEF$PEF͕ྲྀߦ͖ͬͯͨ
43&ͷਓ ਓ͔ΒਓʢؚࣗΉʣ
%FWFMPQFSɺ$*ɺ"*༻ͷ7.ʢ%FWJO.BDIJOFʣ ͜ΕΒͰಉ͡όʔδϣϯͷ$-*Λ͍͍ͨ
$-*ͷόʔδϣϯཧπʔϧ ͷಋೖ͕ٸʹ
৭ʑݕ౼ͯ͠ΈΔ
BTEG w BTEG w UPPMWFSTJPOTΛϦϙδτϦʹೖΕΔ͜ͱͰෳͷ$-*ͷ όʔδϣϯΛڞ༗Ͱ͖Δ w ݩʑCBTI࣮͕ͩͬͨɺW ʣ͔Β
(PͰ࠶࣮͞Εͨ 13IUUQTHJUIVCDPNBTEGWNBTEGQVMM
BRVB w BRVB w BTEGMJLFͳͷ w (P w 4IVOTVLF4V[VLJࢯ͕։ൃ
w BRVBSFHJTUSZ͕ݫ֨ʹཧ͞Ε͓ͯΓɺ ηΩϡΞͳ࡞Γʹͳ͍ͬͯΔ w ຊͰͷ࠾༻࣮ଟ IUUQTHJUIVCDPNBRVBQSPKBRVB
NJTFFOQMBDF w NJTFFOQMBDF w ຊޠͰͷൃԻʮϛʔζʯͰྑ͍ͬΆ͍1SPOPVODFE.&&;BIOQMBIT w ϑϥϯεޠͰʮԼ४උʯͱ͍͏ҙຯ w 3VTU
w BTEGͷ্Ґޓʢͱݴ͍ͬͯྑ͍Α͏ʹࢥ͏ʣ w ৄ͘͠ެࣜαΠτʹ৭ʑͱॻ͍ͯ͋Δ w λεΫϥϯφʔڥมͷΓସ͑Ͱ͖ΔͷͰɺ.BLF fi MFEJSFOWతͳػೳඋΘ͍ͬͯΔ w BTEGBRVBʹ Ћͳػೳ͕ੜ͍͑ͯΔͱ͍͏ײ͡ IUUQTNJTFKEYEFW
NJTFFOQMBDF IUUQTNJTFKEYEFWEFWUPPMTDPNQBSJTPOUPBTEGIUNMTVQQMZDIBJOTFDVSJUZ w 4VQQMZDIBJOTFDVSJUZ w ͳΔ͘ηΩϡΞʹѻ͍͍ͨ w NJTF࡞ऀͷKEYࢯʹΑΔͱɺ͜ͷྨͷίϛϡχςΟओಋͷϓϥάΠϯͷ ΤίγεςϜTVQQMZDIBJOBUUBDLͷڴҖʹͳΓ͍͢
w ΑΓݫ֨ͳQMVHJOཧΛ͍ͨ͠ࢫ͕ॻ͔Ε͍ͯΔ w BTEGແͷϓϥάΠϯ࡞ऀʹ؆୯ʹBTEGDPNNVOJUZPSHͷίϛοτݖݶΛ͗͢͠Ͱ͋ΔͨΊɺ ຊདྷ୲อ͍ͨ͠Ψόφϯε͕ޮ͍͍ͯͳ͍ͷͰͱ͍͏ओு
NJTFFOQMBDF w 4VQQMZDIBJOTFDVSJUZ w ಉ͡πʔϧ͕BRVBͱBTEGʹ͋Δ߹BRVBΛ ༏ઌతʹऔΔΑ͏ͳϩδοΫʹͳ͍ͬͯΔ w DIFDLTVNɺ(JU)VC"SUJGBDU"UUFTUBUJPOTͳͲࣗಈͰΑ͠ͳʹݕূͯ͘͠Εͯศར w
໌ࣔతʹॻ͘ํ͕ΑΓ҆৺ w BRVBPSHSFQP
NJTFFOQMBDF w ࣾͰͷଞͷϝϯόʔͷޱίϛͳͲ͋Γɺ NJTFΛಋೖͯ͠ΈΔ͜ͱʹ w NJTFJOTUBMMͷ̍ൃͰશ෦͏ײ͡ʹ͍ͨ͠ w $-*ڥΛศརʹ͢Δ$-*πʔϧʂ
NJTFFOQMBDF w 3FOPWBUFNJTFʹରԠ͍ͯ͠Δ w EFQFOEBCPUݱ࣌ͰະରԠ *TTVFIUUQTHJUIVCDPNEFQFOEBCPUEFQFOEBCPUDPSFJTTVFT
͖ͬͯͨ͜ͱʢҰ෦հʣ :BL4IBWJOH
-FHBDZ5FSSBGPSN w NJTFJOTUBMMͰڥߏங͕̍ൃͰऴΘΒͳ͍ w "QQMF4JMJDPONBD04ͰUFNQMBUFQSPWJEFS͕͑ͳ͍ w CSFXJOTUBMMLSFV[XFSLFSNUFSSBGPSNQSPWJEFSIFMQFS w CSFXґଘ
w ηΩϡϦςΟతʹϫʔΫΞϥϯυΛ͋·Γ͍ͨ͘ͳ͍ w ॺ໊ݕূ͕Ͱ͖ͳ͍ w CSFXͰιʔείʔυ͔Βμϯϩʔυ͖ͯͯ͠(PͰϏϧυ͢ΔڍಈʹͳΔ
-FHBDZ5FSSBGPSN IUUQTEJTDVTTIBTIJDPSQDPNUUFNQMBUFWEPFTOPUIBWFBQBDLBHFBWBJMBCMFNBDN w "QQMF4JMJDPONBD04ͰUFNQMBUFQSPWJEFS͕͑ͳ͍ w UFNQMBUFQSPWJEFSςϯϓϨʔτʹมΛຒΊࠐΜͰͦΕΛ͏͜ͱ͕Ͱ͖Δ w 5FSSBGPSNҎ߱͜Εͱಉͷػೳ͕ඪ४ͷؔͰΈࠐ·ΕΔ͜ͱʹͳͬͨͨΊɺ UFNQMBUFQSPWJEFSΞʔΧΠϒ͞ΕΔ͜ͱʹ
w Կނ͔EBSXJO@BSNରԠ͞ΕΔલʹΞʔΧΠϒ͞Εͨ
-FHBDZ5FSSBGPSN w "QQMF4JMJDPONBD04ͰUFNQMBUFQSPWJEFS͕͑ͳ͍ w ͭͣͭґଘΛऔ͍ͬͯ͘ w ਪ͞Εͨඪ४ͷؔͰஔ͍ͯ͘͠
νʔϜͰͷσϞ w جຊతʹBRVBSFHJTUSZʹ͋ΔͨΊେ͖ͳͳ͔ͬͨ w ͋Δఔಈ͘Α͏ʹͳͬͨλΠϛϯάͰ νʔϜͰσϞΛ൸࿐͠ɺख৮ΓײΛ͔֬ΊͯΒͬͨ
·ͱΊ w ෳਓͷ։ൃɺࣝʹ͕ࠩ͋Δ߹ͩͱ ίϚϯυͰηοτΞοϓ͕ऴΘΔͱศར w ৽͍͠ϝϯόʔͷΦϯϘʔσΟϯάίετݮ w ࣗͷ$-*ڥΛྑ͘͢Δ͚ͩʹཹ·Βͣɺ νʔϜͷ$-*ڥΛྑ͘͢ΔͱḿΔ
w Έͳ͞ΜͷνʔϜͲͷΑ͏ʹ͍ͯ͠·͔͢ʁ ෳਓͰͷྑ͍Β͠