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.7k
ミニマリストのための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
110
SKE48とセットリスト
hiratatom
0
130
ふくらはぎ。
hiratatom
0
140
COBOLミートアップ #1
hiratatom
0
120
トニーモリスの総選挙参戦記
hiratatom
0
350
んんんまなつぅ
hiratatom
0
1.5k
情報系システムで生き残る
hiratatom
0
150
Tony Morris Meet Up
hiratatom
0
300
Other Decks in Programming
See All in Programming
個人開発で徳島大学生60%以上の心を掴んだアプリ、そして手放した話
akidon0000
1
140
AIでLINEスタンプを作ってみた
eycjur
1
230
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
290
スケールする組織の実現に向けた インナーソース育成術 - ISGT2025
teamlab
PRO
1
160
Reading Rails 1.0 Source Code
okuramasafumi
0
250
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
3.3k
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
120
Design Foundational Data Engineering Observability
sucitw
3
200
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
2.4k
楽して成果を出すためのセルフリソース管理
clipnote
0
180
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Agile that works and the tools we love
rasmusluckow
330
21k
Context Engineering - Making Every Token Count
addyosmani
3
58
Rails Girls Zürich Keynote
gr2m
95
14k
Thoughts on Productivity
jonyablonski
70
4.8k
Six Lessons from altMBA
skipperchong
28
4k
Facilitating Awesome Meetings
lara
55
6.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What's in a price? How to price your products and services
michaelherold
246
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Optimizing for Happiness
mojombo
379
70k
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 ϦεΫసՇΑΓܰݮ͕༗ӹͳͷݴ͏·Ͱͳ͍ɻ ܰ͞ਖ਼ٛ