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イメージ置き場の件
Search
ozzozz
September 16, 2016
Technology
4k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dockerイメージ置き場の件
ozzozz
September 16, 2016
More Decks by ozzozz
See All by ozzozz
BOSH 101 winter 2018
ozzozz
3
1.2k
コンテナベースのクラウド基盤とマイクロサービスアーキテクチャ / IEICE NW NWS16
ozzozz
0
150
BOSH101 autumn 2017
ozzozz
5
2k
Cloud Foundry について 〜日本国内のCFコミュニティ界隈の状況など〜 / Session 4-B2-1 at OpenStack Days Tokyo 2017
ozzozz
1
490
Cloud Foundry on OpenStack deep dive / Session 4-B2-5 at OpenStack Days Tokyo 2017
ozzozz
2
240
Cloud Foundry Summit Silicon Valley 2017 参加報告
ozzozz
1
330
Cloud Foundryに関する日本国内コミュニティについて / About Cloud Foundry community in Japan
ozzozz
0
1.4k
Running Concourse CI on enterprise private cloud
ozzozz
1
550
Running Concourse CI on enterprise private cloud【日本語版】
ozzozz
4
920
Other Decks in Technology
See All in Technology
記録をかんたんに、提案をパーソナルに ── AIであすけんが目指すもの
oprstchn
0
130
事業価値を⽣み出すSREへ SREが担うべき意思決定の5層
kenta_hi
0
120
AIエージェントとPhysical AIが拓く製造業の変革(ハノーバーメッセリキャップ)
iotcomjpadmin
0
210
4人目のSREはAgent
tanimuyk
0
370
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
300
そこにあるから地図ができる~位置を示す"モノ"を愉しむ~ - Interface 2026年6月号GPS特集オフ会 / interface_202606_GPS_offline
sakaik
1
190
ご挨拶「10周年を迎える共創ラボのこれまでとこれから」
iotcomjpadmin
0
180
From Prompt Engineering to Loop Engineering
shibuiwilliam
1
330
デジタル・デザイン構想 by Sayaka Ishizuka
y150saya
0
180
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
3
170
金融の未来を考える / Thinking About the Future of Finance
ks91
PRO
0
150
GitHub Copilot運用のリアル ~AI Credit時代にどう向き合うか~
takafumisu2uk1
0
620
Featured
See All Featured
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Between Models and Reality
mayunak
4
360
Designing Powerful Visuals for Engaging Learning
tmiket
1
430
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
190
The World Runs on Bad Software
bkeepers
PRO
72
12k
エンジニアに許された特別な時間の終わり
watany
107
250k
Ethics towards AI in product and experience design
skipperchong
2
320
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
400
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Transcript
%PDLFSΠϝʔδஔ͖ͷ݅ ඌ৲݈ !LFOPKJSJ
• %PDLFSΠϝʔδͲ͜ʹஔ͔Ε͏Δͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴΛͨ͠ͱ ͜ΖͰԿ͕͏Ε͍͠ͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴͳͲʹΑͬͯ ૢ࡞ઃఆ͕Ͳ͏มΘΔͷ͔ ͓͠ͳ͕͖
ͦ͏͍͑%PDLFSΠϝʔδͬͯͳΜ͚ͩͬ ˞ԼهࢿྉΑΓҾ༻ ɹhttp://www.slideshare.net/zembutsu/docker-images-containers-and-lifecycle
ͦ͏͍͑%PDLFSΠϝʔδͬͯͳΜ͚ͩͬ ˞ԼهࢿྉΑΓҾ༻ ɹhttp://www.slideshare.net/zembutsu/docker-images-containers-and-lifecycle
• %PDLFSΠϝʔδͲ͜ʹஔ͔Ε͏Δͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴΛͨ͠ͱ ͜ΖͰԿ͕͏Ε͍͠ͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴͳͲʹΑͬͯ ૢ࡞ઃఆ͕Ͳ͏มΘΔͷ͔ ͓͠ͳ͕͖
ᶃ %PDLFSϗετͷϑΝΠϧγεςϜ • EPDLFSQVMMEPDLFSSVOͳͲͷίϚϯυͰ ϦϞʔτ͔Βऔಘͨ͠Πϝʔδɺ EPDLFSCVJMEEPDLFSDPNNJUͳͲͷίϚ ϯυͰ࡞ͨ͠ΠϝʔδͷϩʔΧϧͷอଘઌ • -JOVYͩͱWBSMJCEPDLFSԼ %PDLFSΠϝʔδஔ͖ͷόϦΤʔγϣϯᶃ
ᶄ %PDLFS)VC2VBZJPͳͲͷQVCMJD%PDLFS SFHJTUSZ • EPDLFSQVMMίϚϯυͰͷΠϝʔδμϯϩʔυ ݩɺ͔ͭEPDLFSQVTIίϚϯυͰͷΠϝʔδ ΞοϓϩʔυઌͱͳΓ͏Δ • Πϯλʔωοτͷ୭ͰμϯϩʔυͰ͖ΔΠ ϝʔδͷஔ͖QVCMJDSFQPTJUPSZɺಛఆͷਓ
͚͕ͩμϯϩʔυͰ͖ΔΠϝʔδͷஔ͖ QSJWBUFSFQPTJUPSZͱݺΕΔʢΑͶʁʣ • QSJWBUFSFQPTJUPSZͷ࡞༗ྉͩͬͨΓ͢Δ • ͲͪΒͷSFQPTJUPSZEPDLFSQVTIʹ͋ͨͬ ͯϢʔβೝূཁ • EPDLFSίϚϯυͰSFHJTUSZΛಛʹࢦఆ͠ͳ ͚ΕσϑΥϧτͰ%PDLFS)VC͕ΘΕΔ %PDLFSΠϝʔδஔ͖ͷόϦΤʔγϣϯᶄ
ᶅ ࣗલͰཱͯΔQSJWBUF%PDLFSSFHJTUSZ • EPDLFSQVMMίϚϯυͰͷΠϝʔδμϯ ϩʔυݩɺ͔ͭEPDLFSQVTIίϚϯυͰͷ ΠϝʔδΞοϓϩʔυઌͱͳΓ͏Δ • -"/ͱ͔ϓϥΠϕʔτΫϥυͱ͔71$ ʹཱͯΔ͜ͱͰɺΠϝʔδͷμϯϩʔυ ઌΞοϓϩʔυݩΛݶఆͰ͖Δ
• QSJWBUFSFQPTJUPSZఏڙͰ͖Δ • %PDLFS͕ࣾ044ʹ͍ͯ͠ΔSFHJTUSZͰ ఏڙՄೳʹͳͬͯͨʢ͍ͭͷؒʹʂʁʣ TFFhttps://docs.docker.com/registry/deploying/#/ restricting-access %PDLFSΠϝʔδஔ͖ͷόϦΤʔγϣϯᶅ
ֆͰ·ͱΊΔͱ Πϯλʔωοτ -"/QSJWBUFDMPVE 71$ ᶃ ϩʔΧϧϑΝΠϧγεςϜ ᶄQVCMJD%PDLFSSFHJTUSZ QVCMJDSFQPTJUPSZˠ ˡQSJWBUFSFQPTJUPSZ ᶅQSJWBUF%PDLFSSFHJTUSZ
• %PDLFSΠϝʔδͲ͜ʹஔ͔Ε͏Δͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴΛͨ͠ͱ ͜ΖͰԿ͕͏Ε͍͠ͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴͳͲʹΑͬͯ ૢ࡞ઃఆ͕Ͳ͏มΘΔͷ͔ ͓͠ͳ͕͖
• ՝ۚͳ͠Ͱ%PDLFSΠϝʔδΛൿಗ͢ΔͨΊʹ • QVCMJDSFHJTUSZ͕ఏڙ͢ΔQSJWBUF SFQPTJUPSZͰใཧʹෆ҆Λ๊͔ΕΔ ΤϯλʔϓϥΠζ স ͳ͓٬༷ʹ QSJWBUF%PDLFSSFHJTUSZͷ͍Ͳ͜Ζ
՝ۚͳ͠Ͱ%PDLFSΠϝʔδΛൿಗ͢ΔͨΊʹ Πϯλʔωοτ -"/QSJWBUFDMPVE 71$ ᶃ ϩʔΧϧϑΝΠϧγεςϜ ᶄQVCMJD%PDLFSSFHJTUSZ ᶅQSJWBUF%PDLFSSFHJTUSZ
• ՝ۚͳ͠Ͱ%PDLFSΠϝʔδΛൿಗ͢ΔͨΊʹ • QVCMJDSFHJTUSZ͕ఏڙ͢ΔQSJWBUF SFQPTJUPSZͰใཧʹෆ҆Λ๊͔ΕΔ ΤϯλʔϓϥΠζ স ͳ͓٬༷ʹ • खݩͷෳͷ%PDLFSϗετؒͰ%PDLFSΠ
ϝʔδΛ͍ճͨ͢Ίʹ • ϦϞʔτ͔ΒͷΠϝʔδμϯϩʔυ ͍ͷͰɺಡΈࠐΈΩϟογϡͱͯ͠ • $*ʹΑͬͯසൟʹΠϝʔδΛ࡞͢ΔͷͰɺ ςετ༻ΠϝʔδͷҰ࣌తஔ͖ॴͱͯ͠ QSJWBUF%PDLFSSFHJTUSZͷ͍Ͳ͜Ζ
खݩͷෳͷ%PDLFSϗετؒͰ ɹɹɹɹ%PDLFSΠϝʔδΛ͍ճͨ͢Ίʹ Πϯλʔωοτ -"/QSJWBUFDMPVE 71$ ᶄQVCMJD%PDLFSSFHJTUSZ ᶅQSJWBUF%PDLFSSFHJTUSZ ͍ͷϠμ
˞%PDLFSࣾ044൛SFHJTUSZΛ͏લఏ • ·͓ͣࢼ͠Ͱ%PDLFSίϯςφͱͯ͠ىಈ͢Δ • 3FHJTUSZʹอଘ͢Δ%PDLFSΠϝʔδΛ%PDLFSϗετ্ͷϑΝΠϧ γεςϜͰӬଓԽ͢Δ • )5514ͰαʔϏε͢Δ ͪΌΜͱͨ͠ূ໌ॻΛ͑ͤʹͳΕΔΑʂʲޙड़ʳ
QSJWBUF%PDLFSSFHJTUSZͷͭ͘Γ͔ͨᶃ $ docker run -d -p 5000:5000 registry:2 $ docker run -d -p 5000:5000 \ -v /srv/registry:/var/lib/registry \ registry:2 $ docker run -d -p 5000:5000 \ -v /srv/registry-certs:/certs \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ registry:2
˞(6*΄͍͠Ͱ͠ΐʁ͋ΔΑ QSJWBUF%PDLFSSFHJTUSZͷͭ͘Γ͔ͨᶄ $ docker run -d -p 8080:80 \ -e
ENV_DOCKER_REGISTRY_HOST: 192.168.0.1 \ -e ENV_DOCKER_REGISTRY_PORT: 5000 \ konradkleine/docker-registry-frontend:v2
QSJWBUF%PDLFSSFHJTUSZͷͭ͘Γ͔ͨᶅ ଞʹɾɾɾ • 7.XBSF044IBSCPSΛ͏ • ͳΜ͔ͱͬͯΑ͍ͷΒ͍͠Αʂ • (JU-BCΛ͏ • ͦ͏͍͏ػೳ͕͋ΔΒ͍͠Ͱ͢Ͷ
• %PDLFS%BUBDFOUFSͱ͔ 2VBZ&OUFSQSJTFͱ͔Λങͬͯ͏ • ශੑͷΦϨͨͪʹݫ͍͠ ͳͲͳͲ
• %PDLFSΠϝʔδͲ͜ʹஔ͔Ε͏Δͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴΛͨ͠ͱ ͜ΖͰԿ͕͏Ε͍͠ͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴͳͲʹΑͬͯ ૢ࡞ઃఆ͕Ͳ͏มΘΔͷ͔ ͓͠ͳ͕͖
• %PDLFS)VCΛ͏߹ • )551ͰαʔϏε͞Ε͍ͯΔSFHJTUSZΛ͏߹ • )5514ͰαʔϏε͞Ε͍ͯΔSFHJTUSZΛ͏߹ EPDLFSίϚϯυͰͷSFHJTUSZࢦఆ $ docker pull
ozz/hoge $ docker login $ docker tag hogehoge ozz/hoge $ docker push ozz/hoge $ docker pull 192.168.0.1:5000/ozz/hoge $ docker tag hoge 192.168.0.1:5000/ozz/hoge $ docker push 192.168.0.1:5000/ozz/hoge $ docker pull reg.nttlabs.info:5000/ozz/hoge $ docker tag hoge reg.nttlabs.info:5000/ozz/hoge $ docker push reg.nttlabs.info:5000/ozz/hoge ˞ͨͩ͠ɺEPDLFSσʔϞϯʹJOTFDVSFSFHJTUSZͷઃఆཁʲޙड़ʳ ˞ͨͩ͠ɺSFHJTUSZ͕ΦϨΦϨূ໌ॻͳͲݕূύε͕ແޮͳαʔόূ໌ॻΛ ɹ༻͍ͯ͠Δ߹ɺEPDLFSσʔϞϯʹJOTFDVSFSFHJTUSZͷઃఆཁʲޙड़ʳ
• FUDEFGBVMUEPDLFSʹઃఆΛՃ͠ɺ %PDLFSσʔϞϯΛ࠶ىಈ 6CVOUV 6QTUBSUΛ࠾༻ ͷ JOTFDVSFSFHJTUSZઃఆ $ sudo vim
/etc/default/docker === DOCKER_OPTS="--insecure-registry=192.168.0.1:5000" === $ sudo service docker restart
6CVOUV TZTUFNEΛ࠾༻ ͷ JOTFDVSFSFHJTUSZઃఆ • FUDTZTUFNETZTUFNEPDLFSTFSWJDFEԼ ʹઃఆϑΝΠϧΛՃ͠ɺTZTUFNEʹ৽ͨͳઃ ఆΛೝࣝͤ͞ɺ%PDLFSσʔϞϯΛ࠶ىಈ $ sudo
mkdir /etc/systemd/system/docker.service.d/ $ sudo vim /etc/systemd/system/docker.service.d/ insecure-registry.conf === [Service]! ExecStart=! ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry=192.168.0.1:5000! === $ sudo systemctl daemon-reload $ sudo systemctl show docker $ sudo systemctl restart docker.service
• %PDLFSΠϝʔδͲ͜ʹஔ͔Ε͏Δͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴΛͨ͠ͱ ͜ΖͰԿ͕͏Ε͍͠ͷ͔ • %PDLFSΠϝʔδͷஔ͖ॴͳͲʹΑͬͯ ૢ࡞ઃఆ͕Ͳ͏มΘΔͷ͔ ͓͠ͳ͕͖
• ਖ਼͘͠ཧղ͠ݡ͓͘͏ ɹɹɹɹɹɹSFHJTUSZͱSFQPTJUPSZ • ؾΛ͚ͭΑ͏ ɹɹɹɹɹSFHJTUSZͷσΟεΫ༰ྔ • Ұ௮͚ɹ༰ബͯ͘͝ΊΜͳ͍͞ ͓ΘΓʹ
None