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
DockerでGentooのテスト
Search
naota
July 05, 2014
Technology
1.9k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DockerでGentooのテスト
naota
July 05, 2014
More Decks by naota
See All by naota
btrfs領域管理一代記
naota
2
1.2k
ファイルシステムの歴史: ジャーナリング編
naota
2
1.1k
Btrfsのころしかた(だったもの)
naota
0
1.1k
Btrfsの構造
naota
5
2.9k
Other Decks in Technology
See All in Technology
生成AI活用によるODC欠陥分析の分類高速化の実践と導入効果 / 20260703 Suguru Ishii
shift_evolve
PRO
2
100
Claude Code 珍プレー好プレー
shinyasaita
0
290
NDIAS CTF 2026 問題解説会資料
bata_24
0
180
SRE Lounge Hiroshimaへの招待
grimoh
0
410
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
12
1.8k
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
LiDAR SLAMの実装とセンサ融合 ~Lie群からContinuous-Time LIOまで~
naokiakai
1
1k
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
2
2.7k
初めてのDatabricks勉強会
taka_aki
2
240
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
1.6k
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
2.2k
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
170
Code Review Best Practice
trishagee
74
20k
Paper Plane (Part 1)
katiecoart
PRO
0
9.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Code Reviewing Like a Champion
maltzj
528
40k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
270
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Deep Space Network (abreviated)
tonyrice
0
220
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Building an army of robots
kneath
306
46k
Transcript
Docker Ͱςετ͢Δ ੨ాେ 2014-07-05 ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 1 /
16
ebuild ॻ͍ͯ·͔͢ ebuild ॻ͘ͷָͰͱ͍͍ͯͰ͢Ͷ ͪΌΜͱςετͯ͠·͔͢ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 2
/ 16
ςετͷํ๏ repoman build ͯ͠ΈΔ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 3 /
16
repoman repoman full ͢Δͱ ebuild ͷจ໘ΛνΣ οΫͯ͘͠ΕΔ ͜ͷ package
RDEPEND ʹೖͬͯΔ͚Ͳɺ΄Μͱʹ? DEPEND ͩ ͚Ͱ͍͍Μ͡Όͳ͍ͷɻͱ͔ݴͬͯ͘ΕΔ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 4 / 16
build ͯ͠ΈΔ build ͯ͠ΈΔͱ͍Ζ͍Ζͱ Portage ͕Ϗϧυ࣌νΣ οΫΛͯ͘͠ΕΔ ͚ΕͲ ੨ాେ Docker
Ͱςετ͢Δ 2014-07-05 5 / 16
ઃఆ͕ඞཁ FEATURES=test ύοέʔδͷςετϓϩάϥϜΛ࣮ߦ PORTAGEELOGCLASSES="${PORTAGEELOGCLASSES} qa" ༷ʑͳ QA ͷϩάग़ྗ CFLAGS,CXXFLAGS,FFLAGS,FCFLAGS ͷ
શͯ ʹ "-frecord-gcc-switches" ΛೖΕΔ gcc ͷ CFLAGS ΛόΠφϦʹه ͪΌΜͱ CFLAGS ͕ө͞Ε͍ͯΔ͔Ͳ͏͔ΛνΣ οΫͯ͘͠ΕΔ ld.gold Λ͏ underlinking Λ;͙ͤ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 6 / 16
QA ͷྫ SONAME missing .so ϑΝΠϧʹ SONAME ͱ͍͏͕ઃఆ͞Ε͍ͯͳ͍ ϦϯΧ͕ϦϯΫΛߦͳ͏࣌ʹ༻͍Δ (͋ͬͨํ͕Α͍)
world writable setuid binary ͍ RUNPATHɾEXECSTACK RUNPATH: shared object ͷ lookup ઌ: /tmp ͱ͔ೖͬͯͳ͍? EXECSTACK: ࣮ߦՄೳͳελοΫ: มͳίʔυೖΕΒΕͳ͍? ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 7 / 16
͜Ε͚ͩͰ͍͍ͷ? ຊʹ ͦΕͰ Ͳ͜Ͱ ϏϧυͰ͖ΔͷͩΖ͏͔? DEPEND ʹೖͬͯͳ͍ͷ͕͋Δ͔? ͨ·ͨ·ࣗͷڥʹೖ͍ͬͯͨʜͱ͍͏Φν Ͳ͏ͬͯςετͨ͠Β͍͍? stage3
ͷ·ͬ͞Βͳڥ͔Β ΊΜͲ͘ͳ͍ɾ ɾ ɾ? ڥ͍͍ͪͪ࡞Δͷ? ຖճ࠷ॳ͔ΒશͯίϯύΠϧ͢Δͷ? ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 8 / 16
Docker Λ͓͏ Docker ͱͳʹ͔ -> ͍·͞ΒͳͷͰলུ ίϯςφΛͬͨԾڥ kernel ڞ௨ͰϦιʔε੍ݶͰ͖Δ ϓϩηεۭؒͱ͔ผ
chroot ͷͭΑ͍ͭ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 9 / 16
Docker Ͱ Gentoo ڥ git clone https://github.com/naota/dockergentoo export MAINTAINER="Naohiro Aota
<
[email protected]
>" ./bin/update.sh Docker ͷ stage3 ڥͱ Portage πϦʔڥ͕Ͱ͖ΔΑ! ಉ͡Α͏ʹ distfiles ڥ࡞Δ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 10 / 16
ུ֓ਤ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 11 / 16
Docker Ͱ emerge ͢Δ ./bin/build-package.sh <flag> <package> ./bin/build-package.sh ’app-editors/emacs +X’
’app-editors/emacs’ ./bin/build-package.sh ” ’pficommon’ (ࣗͷڥʹ͋Δ) ࠷৽ͷ stage3 ͱ Portage πϦʔΛͬͯɺUSE ϑϥάΛઃఆͯ͠ɺemerge ͕Δ ίϯςφΠϝʔδࣗಈফڈʹ͍ͯ͠Δ ࣗͰফڈ͢ΔखؒΛল͘ emerge ͕ޭͨ͠ -> ͓ΊͰͱ͏͍͟͝·͢ ಉ࣌ʹόΠφϦ͕࡞ΒΕ͍ͯΔͷͰɺޙͷ emerge ޮతʹͳΔ emerge ͕ࣦഊͨ͠ -> ݪҼΛௐ͍ͨΑͶ results/ͷԼʹ/var/tmp/portage Λ tar.xz ͨ͠ͷ͕ೖͬͯΔ unpack ͖ͯ͠ͳ͚ͩݪҼΛ୳ΕΔ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 12 / 16
ࣗͷ ebuild Λςετ͢Δ ./bin/test-ebuild.sh ’gwaei +hunspell’ gwaei-3.6.2.ebuild ίϯςφͷதͰࢦఆͨ͠ ebuild ͚ͩΛ
overlay ʹ͍Εͯ emerge ͯ͠ ͘ΕΔ ࣗͰॻ͍ͨ ebuild Λςετ͢Δͷʹ࠷ద ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 13 / 16
ͼΈΐ͏ʹΓ͍ͨ͜ͱ͕͋Δ USE ϑϥάΛཱͯΔ͚ͩͰΓͳ͍ ./bin/shell.sh gwaei-3.6.2.ebuild overlay Λ࡞ͬͯίϯςφͷதͰ shell ͕ىಈ͞ΕΔ emerge
ͷલʹ͍ͨ͜͠ͱΛ͍Ζ͍Ζͯ͠ /build/dockerbuild.sh <flag> <package> ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 14 / 16
কདྷతʹ portage πϦʔͷதͷͷΛ͔ͨͬͺ͔͠ΒϏϧυ ͳΜ͔͏ͬͯΔਓ͕͍ΔͬΆ͍? Python ͔ͳΜ͔Ͱॻ͖͢ ebuild Λ upload ͯ͠ςετͯ͘͠ΕΔ
Web αʔϏε distfiles ΛෳϚγϯͰڞ༗ ϏϧυΩϡʔΛ࡞ͬͯۀͱ͔ ੨ాେ Docker Ͱςετ͢Δ 2014-07-05 15 / 16
·ͱΊ ΫϦʔϯͳڥͰϏϧυͰ͖Δ dockergentoo Λ࡞ͬͨΑ https://github.com/naota/dockergentoo ॻ͍ͨ ebuild ΛΫϦʔϯʹςετͰ͖ΔΑ όΠφϦΛ࡞͓͍ͬͯͯ͘ΕΔͷͰԿϏϧυ͠ͳ͓͞ͳ͍Α ੨ాେ
Docker Ͱςετ͢Δ 2014-07-05 16 / 16