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
Ayato
March 10, 2018
Technology
1
1.6k
速習・Dockerと学ぶPHP / 20180310-PHPerKaigi
2018年3月10日
PHPerKaigi 2018 LT資料
ココネリ練馬 にて
Ayato
March 10, 2018
Tweet
Share
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
白金鉱業Meetup_Vol.22_Orbital Senseを支える衛星画像のマルチモーダルエンベディングと地理空間のあいまい検索技術
brainpadpr
2
290
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
4.2k
Security Diaries of an Open Source IAM
ahus1
0
210
生成AIの利用とセキュリティ /gen-ai-and-security
mizutani
1
1.6k
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
150
Shifting from MCP to Skills / ベストプラクティスの変遷を辿る
yamanoku
4
790
Claude Code のコード品質がばらつくので AI に品質保証させる仕組みを作った話 / A story about building a mechanism to have AI ensure quality, because the code quality from Claude Code was inconsistent
nrslib
13
5.8k
わたしがセキュアにAWSを使えるわけないじゃん、ムリムリ!(※ムリじゃなかった!?)
cmusudakeisuke
1
500
ナレッジワーク IT情報系キャリア研究セッション資料(情報処理学会 第88回全国大会 )
kworkdev
PRO
0
160
プロジェクトマネジメントをチームに宿す -ゼロからはじめるチームプロジェクトマネジメントは活動1年未満のチームの教科書です- / 20260304 Shigeki Morizane
shift_evolve
PRO
1
250
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
190
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
260
Context Engineering - Making Every Token Count
addyosmani
9
740
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Limits of Empathy - UXLibs8
cassininazir
1
250
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
Why Our Code Smells
bkeepers
PRO
340
58k
Leo the Paperboy
mayatellez
4
1.5k
Bash Introduction
62gerente
615
210k
Google's AI Overviews - The New Search
badams
0
930
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Λಉ࣌ʹษڧͯ͠Έ·͠ΐ͏ʂ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ