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
Better Code Design in PHP
afilina
0
180
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
740
JAWS Days 2025のインフラ
komakichi
1
330
「個人開発マネタイズ大全」が教えてくれたこと
bani24884
1
290
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
290
[JAWS DAYS 2025] 最近の DB の競合解決の仕組みが分かった気になってみた
maroon1st
0
170
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.4k
⚪⚪の⚪⚪をSwiftUIで再現す る
u503
0
120
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
21
4.3k
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
270
Ça bouge du côté des animations CSS !
goetter
2
160
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
336
57k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Embracing the Ebb and Flow
colly
84
4.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Being A Developer After 40
akosma
89
590k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Unsuck your backbone
ammeep
669
57k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
4 Signs Your Business is Dying
shpigford
183
22k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Designing for humans not robots
tammielis
250
25k
A Tale of Four Properties
chriscoyier
158
23k
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 ϦεΫసՇΑΓܰݮ͕༗ӹͳͷݴ͏·Ͱͳ͍ɻ ܰ͞ਖ਼ٛ