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と学ぶPHP / 20180310-PHPerKaigi
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ayato
March 10, 2018
Technology
1.6k
1
Share
速習・Dockerと学ぶPHP / 20180310-PHPerKaigi
2018年3月10日
PHPerKaigi 2018 LT資料
ココネリ練馬 にて
Ayato
March 10, 2018
More Decks by Ayato
See All by Ayato
WordPressのプラグイン更新しないでね問題 / 20170801-ARCANA-Meetup27
ayato
0
680
CodeIgniter Advent Calendar 2016を終えて / 20170214-CodeIgniterNight2
ayato
2
180
CodeIgniterと若者 加筆修正版 / 20161104-CodeIgniterNight-LT
ayato
0
440
Re:ゼロから始める求職生活 修正版 / 20161026-phpstudy-LT
ayato
0
300
Other Decks in Technology
See All in Technology
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
180
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
190
業務に残された「良くない型」で考える「TypeScriptの難しさ」
sajikix
2
550
Claude Code で使える DuckDB Skills を試してみた / DuckDB Skills and Claude Code
masahirokawahara
1
920
[4] Power BI Deep Dive [2026-05]
ohata_bi
0
100
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
1
150
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
6
1.8k
アプリブロック機能のつくりかたと、AIとHTMLの不合理な相性の良さについて
kumamotone
1
260
AI全盛の今だからこそ、あえてもう一度振り返るAPIの基礎
smt7174
3
130
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
560
Databricks 月刊サービスアップデートまとめ 2026年04月号
tyosi1212
0
130
20260516_SecJAWS_Days
takuyay0ne
2
510
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
230
Designing for Timeless Needs
cassininazir
1
220
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
Amusing Abliteration
ianozsvald
1
170
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Raft: Consensus for Rubyists
vanstee
141
7.4k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
55k
How GitHub (no longer) Works
holman
316
150k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
360
Making Projects Easy
brettharned
120
6.6k
Utilizing Notion as your number one productivity tool
mfonobong
4
300
Transcript
श DockerͱֶͿPHP @ayato_tw 2018/03/10 PhperKaigi 2018
ࡢͷલࡇ
ࡢͷલࡇ > PHPerͳΒ͜ΕΒΛ֮ࣗతʹ ʮ࡞Εʯ·͢ΑͶ řŏŕ
ڥߏஙΛεϚϗͰྫ͑Δ 1)1͕ಈ͘ αʔόʔ࡞ͬͯ εϚϗͰ 5XJUUFSݟΕΔ༷ʹͯ͠ 㱺
ڥߏஙΛεϚϗͰྫ͑Δ 1)1͕ಈ͘ αʔόʔ࡞ͬͯ ͪΖΜ(%ͱ͔ *NBHF.BHJDLͱ͔ಈ͘ΑͶ εϚϗͰ 5XJUUFSݟΕΔ༷ʹͯ͠ ͪΖΜެࣜΞϓϦೖΕΔΑ Ͷ
㱺
ڥߏஙΛεϚϗͰྫ͑Δ 1)1͕ಈ͘ αʔόʔ࡞ͬͯ ͪΖΜ(%ͱ͔ *NBHF.BHJDLͱ͔ಈ͘ΑͶ 0QFO44-͡Όͳͯ͘ -JCSF44-Ͱ εϚϗͰ 5XJUUFSݟΕΔ༷ʹͯ͠
ͪΖΜެࣜΞϓϦೖΕΔΑ Ͷ 2ஈ֊ೝূSMS͡Όͳͯ͘ ΞϓϦ 㱺
ͪͳΈʹձͰ 1. εϚϗͰTwitterݟͯΔਓ 2. εϚϗͰTwitterΛެࣜΞϓϦͰݟ͍ͯΔਓ 3. εϚϗͰTwitterΛެࣜΞϓϦͰݟ͍ͯͯɺ͔ ͭ2ஈ֊ೝূʹΞϓϦΛ͍ͬͯΔํ
ڥΛ࡞Δͱޡ͕ࠩੜ·ΕΔ • ͤΊͯϨγϐ͕͋Ε... 㱺 Ansible, Itamae • ͱ͍͏͔(ΊΜͲ͍͠)͍ճ͠ग़དྷΕ... 㱺
Docker
DockerΛͬͯΈΔ VagrantͷଞͷԾԽٕज़ׂѪ
Docker • ৭ΜͳॴͰศརʹ͑Δ༷ʹͳ͖ͬͯͯΔ • GCP / AWS / Azure ͰਐԽ͕ܹ͍͠
• ۙͳॴͩͱ ϩʔΧϧ։ൃڥ / CircleCI 2.0 • speakerdeck.com/kunit ݟͯʂ
DockerͷΠϝʔδ / ίϯςφ Πϝʔδ 㱺 ͍ΘΏΔʮzipͰ͘Εʯ ίϯςφ 㱺 ల։ޙͷϑΝΠϧ܈ (Έ͍ͨͳͷ)
DockerHub 㱺 DockerΠϝʔδ͕ެ։͞ΕͯΔॴ ≒ GitHub
DockerͷΠϝʔδ / ίϯςφ ͜ΕͰڥͷ͍ճ͕͠ग़དྷΔʂ 1. hub.docker.com ͰΠϝʔδΛ୳͢ 2. ΠϝʔδΛ࣋ͬͯ͘Δ (docker
pull) 3. ίϯςφΛىಈͯ͠͏ (docker run, docker exec, …)
DockerͷΠϝʔδ / ίϯςφ εϚϗͷྫ͑Ͱݴ͏ͱ 1. ళฮͰTwitterެࣜΞϓϦͷઃఆ͕ऴΘͬͨεϚϗΛ୳͢ 2. εϚϗΛങ͏ 3. ిݯΛೖΕͯ͏
؆୯ʂɹ(ྫ͔͑ͩΒళฮා͍ͱ͔ݴΘͳ͍)
Dockerfile • shell script ͬΆ͍ͷ • Πϝʔδͷ࡞Γํ • ళฮͷઃఆϚχϡΞϧతͳ •
ྫͱͯ͠ wordpress:4.9-php56-apache ͷ DockerΠϝʔδΛௐͯΈΔ
wordpress:4.9-php56-apache • hub.docker.com/_/wordpress/ ΞΫηε • 4.9-php5.6-apache λάͷ Dockerfile ΛݟͯΈΔ 㱺
GitHubʹ Dockerfile ͕ஔ͍ͯ͋Δ • FROM ͱ RUN ͷॴʹ 㱺 gd / mysqli / opcache ೖͬͯΔ 㱺 WordPressຊମઃஔࡁΈ • ͋Εɺapacheʁ
FROM ۟ΛḷΔ • FROM php:5.6-apache ͳͷͰ hub.docker.com/_/php/ ΞΫηε • 5.6-apache
λάΛݟΔ 㱺 ͜ΕGitHubͰDockerfileΛݟͯΈΔ ...ͱ͍͏ײ͡ͰDockerfile८Γͷཱྀ͕ग़དྷ·͢ ྑ͍ઃఆਅࣅ͠Α͏ʂ(ϥΠηϯεOKͳΒ)
Dockerʹڵຯ͕͋Ε DockerެࣜΠϝʔδΛݟͯΈͨΓ hub.docker.com/r/library/ ެࣜυΩϡϝϯτͷຊޠ༁ΛಡΜͰΈͨΓ ҎԼͷΩʔϫʔυͰάάͬͯΈͨΓ • docker-php-ext-install • docker-compose
• ϓϥΠϕʔτϨδετϦ
࠷ޙʹ Dockerfile८ΓͷཱྀΛ͠ͳ͕Β PHPͱDockerΛಉ࣌ʹษڧͯ͠Έ·͠ΐ͏ʂ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ