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
コンテナをGoで作る
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
sasaki
October 24, 2019
Programming
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コンテナをGoで作る
sasaki
October 24, 2019
More Decks by sasaki
See All by sasaki
Goを活用したサービス開発・運用の話
kuwabarakuwabara
1
1.9k
Other Decks in Programming
See All in Programming
T3DD26: From RAGs to Riches
martinhelmich
0
130
信頼性の目標を誰も求めてない
shubox
0
480
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
410
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
130
初めての模倣学習とVLA
natsutan
0
420
AI時代に学ぶ 好きなルール 嫌いなルール Linter編
shorty5121
0
770
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
620
高専、大学編入、そして未踏へ〜プロダクト開発とキャリアの歩み - Technical College, University Transfer, and On to “Mitou” / My Journey in Product Development and Career
pkmiya
0
130
高専キャリア LT 発表内容
crysta1221
6
5.4k
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
280
Oxlintはいいぞ(続)
yug1224
1
530
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
510
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
260
Paper Plane (Part 1)
katiecoart
PRO
1
10k
My Coaching Mixtape
mlcsv
0
300
Accessibility Awareness
sabderemane
1
190
Utilizing Notion as your number one productivity tool
mfonobong
4
570
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
590
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Ruling the World: When Life Gets Gamed
codingconduct
0
320
How to Ace a Technical Interview
jacobian
281
24k
Transcript
ίϯςφΛ(PͰ࡞Δ ࠤʑউय़ %FTJHO0OF(P
ࣗݾհ w ໊લɿࠤʑউय़ w ձࣾɿ߹ಉձࣾ%..DPN w ۀɿࣗࣾͷγεςϜΛ(PͰ։ൃͯ͠·͢ɻ·ͨɺΠϯ ϑϥ "84 ϑϩϯτ
3FBDU ͬͯ·͢ w ͖ͳͷɿམޠ ཱྲྀ ɺֆ
ࠓճ͓͢͠Δ͜ͱ (PͰίϯςφΛ࡞Δ
͜ͷςʔϚʹͨ͠ཧ༝ ίϯϐϡʔλαΠΤϯεΛࠓҰ͖ͪΜͱཧղ͔ͨͬͨͨ͠ Ί ۀͰίϯςφΛར༻ https://inside.dmm.com/entry/2019/03/28/review-go-test
ԾԽͱ w ϋʔυΣΞͱ04ͷؒʹͭͷ४04ΛೖΕΔ͜ͱͰҰ ͷϋʔυΣΞ্ʹෳͷ04γεςϜΛ҆શʹ͏ͨ Ίͷٕज़ 04Λಠཱͯ͠ѻ͏
ίϯςφͱ w ϗετͷ04ͷΧʔωϧΛڞ༗͍ͯͭͭ͠ɺΞϓϦέʔ γϣϯ͔Βݟͯಠཱͨ͠04Λ࣮ݱ͢Δٕज़
MJCDPOUBJOFSͰίϯςφ࡞ w %PDLFSͷίΞͱͯ͠(PͰॻ͔Ε͍ͯΔϥΠϒϥϦ IUUQTHJUIVCDPNPQFODPOUBJOFSTSVODUSFF NBTUFSMJCDPOUBJOFS
ίʔυৄࡉᶃ w ίϯςφͷੜͱJOUϓϩηεͷىಈͱ͍͏ͭͷ͜ͱΛ ͭͷϑΝΠϧͰ࣮ߦ͢ΔͨΊJOJU ؔΛఆٛ w ίϯςφΛ࡞͢ΔͨΊʹॳظԽͷઃఆ 4UBSU*OJUJBMJ[BUJPOͷύΠ ϓGEΛ։͘͜ͱͰΛίϯςφ Λϩʔυ
https://github.com/opencontainers/runc/blob/ master/libcontainer/factory_linux.go#L282
ίʔυৄࡉᶄ w ੜ͢Δίϯςφ ͷઃఆ /BNFTQBDFT $HSPVQTͳͲ ˞ߏମ$POpHͷ3PPUGϑΟʔϧυʹରͯ͠ɺίϯςφͰ৽͠ ͍ڥΛىಈ͢ΔͨΊʹඞཁͳϑΝΠϧγεςϜΛࢦఆ͢Δඞཁ ͕͋Γ·͢ɻ
ίϯςφϗετͷΧʔωϧΛڞ༗ͯ͠ར༻͢ΔͷͰσΟετϦ ϏϡʔγϣϯෆཁͰ͕͢ɺJOJUϓϩηεҎ߱ͷڥ͕ඞཁͳͨΊ Ͱ͢ɻࠓճEPDLFSJNBHFͷBMQJOFʹؚ·Ε͍ͯΔϑΝΠϧΛར ༻͠·ͨ͠
ίʔυৄࡉᶅ ίϯςφΛੜ IUUQTHJUIVCDPNPQFODPOUBJOFSTSVODCMPCNBTUFSMJCDPOUBJOFSGBDUPSZ@MJOVYHP- ॳظϓϩηεͱͯ͠CBTIΛੜ
ίϯςφʹϩάΠϯ ˞͜ͷϥΠϒϥϦ͕04YͰಈ͔ͤͳ͔ͬͨͷͰɺϩʔΧϧڥঢ়ʹ%PDLFSͰMJOVYίϯςφΛ্ཱͪ͛ͯɺ ͦͷதͰࣗ࡞ͷίϯςφΛੜ͢ΔΑ͏ʹ͍ͯ͠·͢ ຊసɻɻ ੜͨ͠ίϯςφʹϩάΠϯ
ֶͼ w HPΛͬͯίϯςφΛ࡞Δ͜ͱ͕Ͱ͖Δ͜ͱ͕͔ͬͨ w MJCDPOUBJOFSͷιʔεΛ͏͜ͱͰɺ04ϨϕϧͳͲΞϓ ϦέʔγϣϯϨΠϠʔΑΓԼͷॲཧΛͲͷΑ͏ʹ੍ޚͯ͠ ίϯςφΛੜ͠ɺ࣮ߦ͍ͯ͠Δ͔ΛֶͿ͜ͱ͕Ͱ͖ͨ https://golang.org/pkg/os/#Chown
ࢀߟࢿྉ w MJCDPOUBJOFS IUUQTHJUIVCDPNPQFODPOUBJOFSTSVODUSFFNBTUFSMJCDPOUBJOFS w 1PFLͱ(PMECFSHͷԾԽٕज़ IUUQTZVCFTTZIBUFOBCMPHDPNFOUSZ w %PDLFSͱ-9$ IUUQTRJJUBDPN4VSHPJUFNTBEDFBGCBE
w %PDLFS IUUQTXXXEPDLFSDPN w (PݴޠʹΑΔϓϩάϥϚʔࢹͷγεςϜϓϩάϥϛϯά(Pݴޠͱίϯςφ IUUQTBTDJJKQFMFN w ίϯςφϥϯλΠϜͷಈΛཧͯ͠Έͨ݅ IUUQTRJJUBDPNNBNPNBNPJUFNTFEECBCGB
͝੩ௌ͋Γ͕ͱ͏͟͝ ͍·ͨ͠