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
ミニマリストのためのAlpine
Search
A.K.A Tony Morris
April 21, 2016
Programming
2
6.6k
ミニマリストのためのAlpine
Alpine Linux Meetup Tokyo #1
2016/04/21
A.K.A Tony Morris
April 21, 2016
Tweet
Share
More Decks by A.K.A Tony Morris
See All by A.K.A Tony Morris
The Best Moment Of SKE48 2017
hiratatom
0
96
SKE48とセットリスト
hiratatom
0
120
ふくらはぎ。
hiratatom
0
130
COBOLミートアップ #1
hiratatom
0
100
トニーモリスの総選挙参戦記
hiratatom
0
340
んんんまなつぅ
hiratatom
0
1.4k
情報系システムで生き残る
hiratatom
0
140
Tony Morris Meet Up
hiratatom
0
300
Other Decks in Programming
See All in Programming
Boos Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
470
読まないコードリーディング術
hisaju
0
110
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
270
Introduction to kotlinx.rpc
arawn
0
770
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
930
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
750
AWS Step Functions は CDK で書こう!
konokenj
4
640
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
2025.2.14_Developers Summit 2025_登壇資料
0101unite
0
220
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
230
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
280
Featured
See All Featured
The Language of Interfaces
destraynor
156
24k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
How to Ace a Technical Interview
jacobian
276
23k
Fireside Chat
paigeccino
35
3.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Code Reviewing Like a Champion
maltzj
521
39k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
RailsConf 2023
tenderlove
29
1k
Navigating Team Friction
lara
183
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Transcript
ϛχϚϦετͷͨΊͷ "MQJOF "MQJOF-JOVY.FFUVQ5PLZP
ࣗݾհ w τχʔϞϦεϏδωεωʔϜ w ຊ໊ฏాٛ w *5ؔ࿈ͷձࣾۈ w ࣄۀձ͚ࣾʹ4ZTUFN*OUFHSBUJPOΛߦ͏৫ʹॴଐ w
%8)ɺ#VTJOFTT*OUFMMJHFODFͷࣄ͕ϝΠϯ w ྲྀߦͷݴ༿Ͱݴ͏ͱɺ#JH%BUBͱ͔"OBMZUJDT w ৬छϓϩδΣΫτϚωʔδϟʔ·ͨΞʔΩςΫτʢϓϩδΣΫτʹΑΔʣ w ΞϓϦέʔγϣϯ͔Πϯϑϥ͔ͱݴͬͨΒɺΞϓϦέʔγϣϯ୲
#MVF.JYʹ͓͚Δ%PDLFS w *#.ͷΫϥυαʔϏε#MVF.JYͰ1BB4ɺ7.ͱฒͼɺ%PDLFSϕʔεͷαʔϏε͕ఏڙ͞Ε͍ͯΔ
#MVF.JYʹ͓͚Δ%PDLFS w *#.ͷΫϥυαʔϏε#MVF.JYͰ%PDLFSΠϝʔδ͕ఏڙ͞Ε͍ͯΔ w ࣌Ͱ#MVF.JYʹϩάΠϯ͢ΔͱɺԼهͷΠϝʔδ͕ఏڙ͞Ε͍ͯͨ
%FWFMPQFS8PSLTͰνϡʔτϦΞϧɺΨΠυ ͕ެ։͞Ε͍ͯΔͷͰɺͥͻ͝ཡ͍ͩ͘͞ https://www.ibm.com/developerworks/jp/cloud/library/cl-bluemix-minecraft-docker-trs-1/
"MQJOFΛࣗͷαʔόʔʹಋೖͯ͠ΈΔ IUUQXJLJBMQJOFMJOVYPSHXJLJ*OTUBMMBUJPO "MQJOFͷಋೖ͜ͷϦϯΫઌͷखॱͰͳ͠ ಋೖޙͷσΟεΫͷঢ়ଶ͜Μͳײ͡
ͦ͜ʹ%PDLFSΛಋೖͯ͠ΈΔ "MQJOFʹ%PDLFSͷύοέʔδ͕͋Δ IUUQTQLHTBMQJOFMJOVYPSHQBDLBHFT OBNFEPDLFSCSBODIWSFQPBSDINBJOUBJOFS ͳͷͰɺ BQLBEEEPDLFS Λ࣮ߦ͢Ε0,
ॳΊͯͷEPDLFSSVO
QVMMͯ͠ΈΔ w ৭ʑͱ QVMMͯ͠Έͨ w ۤ࿑ͨ͠ͷ͜ͷΤϥʔ IUUQGPSVNBMQJOFMJOVYPSHGPSVNHFOFSBMEJTDVTTJPOXJOEPXTBMQJOFEPDLFSDPNNFOU w ͜͜ʹॻ͍ͯ͋ΔखॱͰղܾ #!/bin/sh
apk add docker sysctl -w kernel.grsecurity.chroot_deny_chmod=0 sysctl -w kernel.grsecurity.chroot_deny_mknod=0 service docker start sleep 5 docker --version docker pull hello-world docker pull alpine docker images localhost:/media# docker pull ianblenke/xfce Using default tag: latest latest: Pulling from ianblenke/xfce a3ed95caeb02: Pull complete aac0c133338d: Extracting 2.235 MB/2.235 MB 762372f10b38: Download complete failed to register layer: ApplyLayer exit status 1 stdout: stderr: chmod /bin/bbsuid: permission denied failed to register layer: ApplyLayer exit status 1 stdout: stderr: chmod /bin/mount: permission denied localhost:~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker latest 3c926f66728e 2 days ago 75.7 MB frolvlad/alpine-python3 latest 88404569db3b 9 days ago 58.06 MB frolvlad/alpine-go latest b0840d40aade 2 weeks ago 179.1 MB frolvlad/alpine-bash latest f30b8e53e1ea 2 weeks ago 14.78 MB jazzdd/alpine-flask latest b1bfa267edec 2 weeks ago 80.21 MB alpine latest d7a513a663c1 2 weeks ago 4.794 MB x11docker/lxde latest 1398a64f70a6 6 months ago 423.2 MB ianblenke/xfce latest b3c21c878fb2 12 months ago 470.5 MB
EFTLUPQڥͷߏஙʹઓɹɹஅ೦ w ʮϛχϚϦετͷͨΊͷʯͱ͍͏ςʔϚʹԊͬͯɺϛχϚϧͳ࡞ۀڥΛ ߏங͠Α͏ͱࢼΈ͕ͨɺ9TFSWFSपΓͰΤϥʔͱͳΓɺஅ೦ɻ
չ͍͠ͷͰ͜Μͳ͜ͱΛ w ίϚϯυϥΠϯ্ʹը૾Λදࣔ JNHUYUίϚϯυ ˞ຊ໐ͬͯ·ͤΜ w ίϚϯυϥΠϯ্ͰNQ࠶ੜ NQH BQLͰJOTUBMM w
$6*ͷϒϥβ MZOY BQLͰJOTUBMM
3BTQCFSSZ1JͰͬͯΈͨ w ͜ͷαΠτͷखॱͰ"MQJOFΛΠϯετʔϧ IUUQXJLJBMQJOFMJOVYPSHXJLJ3BTQCFSSZ@1J w "3.༻ͷEPDLFSͷύοέʔδ͋Γ w 3BTQCFSSZ1JͰ(6*ߏஙΛஅ೦ ɾɾɾ9TFSWFSؔ࿈ͷΤϥʔ͕ղফͰ͖ͳ͔ͬͨ IUUQTQLHTBMQJOFMJOVYPSHQBDLBHFT
OBNFEPDLFSCSBODIWSFQPBSDIBSNIGNBJOUBJOFS $%ͱൺͯ͜ͷେ͖͞ ແઢ-"/ɺ#MVFUPPUI͕ೖͬͯ= εΠοναΠΤϯεͰͷՁ֨
-FTTPOT-FBSOFE ϔουϨεӡ༻͕લఏ
#VTJOFTT7JFXͰͷ"MQJOF %PDLFS ࣄۀձࣾˍ4ZTUFN*OUFHSBUPSͱ͍͏εΩʔϜͰ ɹ"MQJOF %PDLFSͷల։ࠓޙͲ͏ͳΔͷ͔ʁ ʢࢲͷԾઆʣ
͜Μͳ࣌Ͳ͏͢Δʁ ࣄۀձࣾͷ*5෦ͷτοϓɾϚωδϝϯτ͕ ʮ͜Ε͔Β%PDLFSͩΑʯͱݴͬͨΒʁ
͜Μͳ࣌Ͳ͏͢Δʁ ࣄۀձࣾͷ*5෦ͷτοϓɾϚωδϝϯτ͕ ʮΓΦϯɾϓϨϛεͩʯͱݴͬͨΒʁ
ࣄۀձࣾʹͱͬͯ%PDLFS༗ӹ͔ʁ w ΞϓϦέʔγϣϯ୲ͷݱΤϯδχΞ͔Β͢Δͱ%PDLFSඇৗʹັྗతʹөΔɻ w ͳͥͳΒɺΠϯϑϥͷ4DSBQ#VJME͕ͦ͢͠͏ͰɺԼهͷΑ͏ͳΛղܾͰ͖ͦ͏ɻ 1MBO 3% %FTJHO #VJME%FQMPZ 6"5
1MBO 3% %FTJHO #VJME%FQMPZ 6"5 "QQ 5FBN *OGSB 5FBN 1SPKFDU5JNFMJOF ͜ͷ࣌Ͱਖ਼͍͠ ඇػೳཁ݅ΛܾΊΔͷඇৗʹࠔ ͜͜Ͱ 1SPPG0G$PODFQU ͬͱ͖͍ͨ ͜ͷ࣌Ͱඇػೳཁ͕݅ ܾ·ͬͯͳ͍ͱ࡞ۀ͕ਐ·ͳ͍ ϛυϧΤΞͱ04ͷ ૬ੑͷ͕໌ ͦΜͳʹ؆୯ʹ αʔόʔ࡞Εͳ͍ ࠓ͞Βઃఆมߋແཧ ύϑΥʔϚϯεͷ ͕໌ ඇػೳཁ݅ɺ Ͳ͏ͯ͠ ͪΌΜͱܾΊͳ͍ͷʁ *OGSBνʔϜͷՌɺαʔόʔͦͷͷͱେͳઃఆϦετɺߏஙखॱॻͰ͋Δɻ ͦΕΒͷߋ৽ͱ࠶࣮ࢪɺϓϩδΣΫτͷίετΛߟ͑Δͱݱ࣮తͰͳ͍
ࣄۀձࣾʹͱͬͯ"MQJOF༗ӹ͔ʁ w γεςϜߏܾఆʹ͓͍ͯɺٕज़Ҏ֎ͷཁૉ͕ ΊΔׂ߹ҙ֎ʹେ͖͍ɻ w ࣄۀձࣾٴͼ4*FS༗ঈσΟετϦϏϡʔγϣϯ ΛΉɻ͜ΕαϙʔτΛٻΊΔͨΊɻ w ϦεΫͷసՇཧ༝ͷҰ͕ͭͩɺసՇ͔ͨ͠Βͱ ͍ͬͯܰݮ͞ΕΔΘ͚Ͱͳ͍ɻ
ࣄۀձࣾʹͱͬͯ"MQJOF༗ӹ͔ʁ w ʮܰ͞ʯʹϞδϡʔϧͷগͳ͞ w ʮܰ͞ʯʹιʔείʔυͷগͳ͞ ɹɹͱ͍͏͜ͱͳΒɺোൃੜͷϦεΫܰݮ͞ΕΔ w ϦεΫసՇΑΓܰݮ͕༗ӹͳͷݴ͏·Ͱͳ͍ɻ ܰ͞ਖ਼ٛ