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
ゆうきゃんどっかー のススメ In #TechCafe
Search
ゆうきゃん
December 09, 2020
Programming
2
240
ゆうきゃんどっかー のススメ In #TechCafe
ゆうきゃん
December 09, 2020
Tweet
Share
More Decks by ゆうきゃん
See All by ゆうきゃん
開発体験を爆上げするLaravel Dacapo マイグレーションサポートツールのススメ
ucan_lab
0
1.2k
モテるコードの書き方
ucan_lab
0
230
momochanにも分かるPSR講座
ucan_lab
0
40
ターミナルtips
ucan_lab
0
87
Laravel Dacapo 2019-09-06 YYPHP 99
ucan_lab
0
230
Laravel + Docker 環境構築ハンズオン
ucan_lab
2
440
Laravel+GraphQL 良かったこと 困ったこと 悲しかったこと
ucan_lab
2
710
バージョン管理ツールについて振り返り
ucan_lab
0
66
Other Decks in Programming
See All in Programming
DRFを少しずつ オニオンアーキテクチャに寄せていく DjangoCongress JP 2025
nealle
2
260
Honoをフロントエンドで使う 3つのやり方
yusukebe
7
3.5k
XStateを用いた堅牢なReact Components設計~複雑なClient Stateをシンプルに~ @React Tokyo ミートアップ #2
kfurusho
1
970
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
53
18k
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
220
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.1k
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
140
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
150
PRレビューのお供にDanger
stoticdev
1
230
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
500
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
150
Featured
See All Featured
Making Projects Easy
brettharned
116
6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Why Our Code Smells
bkeepers
PRO
336
57k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Speed Design
sergeychernyshev
27
810
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Mobile First: as difficult as doing things right
swwweet
223
9.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
Ώ͏͖ΌΜͲ͔ͬʔ ͷεεϝ In #PHPTechCafe 2020/12/09 ucan_lab@rolo
࣍ 1. ࣗݾհ 2. Ώ͏͖ΌΜͲ͔ͬʔͱ 3. LaravelͷϩʔΧϧ։ൃڥબࢶଟ͗͢ 4. ࡞Ζ͏ͱ͖͔͚ͨͬ͠ 5.
ಛ 6. ͍ํ 7. ͩ͜ΘͬͨϙΠϯτ 8. એ 9. ษڧձͰฉ͖͍ͨ͜ͱ
ࣗݾհ • ucan_lab (Ώ͏͖ΌΜ) • ʑ্ݪʹ͋ΔגࣜձࣾROLOʹॴଐ • C, Java, C++,
Swift, Rails, Symfony, Laravel(ࠓίί) • ΈࠐΈΤϯδχΞ͔ΒΣϒΤϯδχΞ • ࠲ӈͷʮదࡐదॴʯ
Ώ͏͖ΌΜͲ͔ͬʔͱʁ • https://github.com/ucan-lab/docker-laravel • Docker ComposeΛͬͨ࠷খߏͷLaravel ։ൃڥߏஙςϯϓϨʔτͰ͢ɻ
LaravelͷϩʔΧϧ։ൃڥ બࢶଟ͗͢ • Laradock (10.2k) • Homestead (3,596) • Valet
(1,847) • Vessel (951) • Laravel Sail (44) • Docker Compose • Vagrant + VirtualBox • XAMPP/MAMP • Local PHP ※ () ݱࡏͷStarͰ͢
࡞Ζ͏ͱ͖͔͚ͨͬ͠
2લͷࢲɺDockerʹग़ձ͏
Laradock͕ਓؾΒ͍͠
ίʔυΛݟͯΈΔ
ίʔυΛݟͯΈΔ • docker-compose.yml: 1,819ߦ • php-fpm/Dockerfile: 1,005ߦ
ͳΜΘ͔ΒΜ
2લʹLaradockʹ৮Εͨࢲ • Θͳ͍ίϯςφઃఆ͕ଟ͗͢Δ... • DBΛͦΜͳԿछྨΘͳ͍... • ίϛϡχςΟ׆ൃ͗ͯ͢ߏ͕සൟʹมΘΔ... • Ϗϧυʹ30͔͔Δ͔Β؆୯ʹڥΛյͤͳ͍...
ࣗͰ࡞Δ͔
ʮDocker LaravelʯͰάάΔ
͔͠͠ɺ·ͨΈ͕...
͍͔ͭ͘هࣄΛࢼͯ͠Έͨ݁Ռ • هࣄͷ௨ΓਐΊͯಈ͔ͳ͍ • ͳͥͦͷߦΛՃͨ͠ཧ༝આ໌͕ͳ͍ • ϛυϧΣΞͷόʔδϣϯ͕มΘͬͯಈ͔ͳ͍ • ͙͢ʹࢼͤΔڥ͕ཉ͍͠ •
طଘͷLaravelͷڥʹಋೖ͍ͨ͠
ࣗͰ࡞Δ͔
docker-laravelͷհ
ಛ • Ϗϧυखॱͷ͞ • Ϗϧυͷ͞ • ࠷খݶͷߏ • PHP7.4/Composer2/nginx1.18/ Node14.2/MySQL8.0
͍ํ
͍ํ
͍ํ
͍ํ: ิ
͍ํ: ิ
ͩ͜ΘͬͨϙΠϯτ • 1ߦ1ߦɺ1ۭനɺ1վߦ·ͰΛஸೡʹॻ͘ • ϕʔεΠϝʔδalpineͰͳ͘debian • αʔϏε໊Λ web, app, db
ʹ͍ͯ͠Δ • Α͘͏ίϚϯυΛMakefileʹ·ͱΊ͍ͯΔ • ϙʔτ൪߸DBଓઃఆ .env ͰมߋՄೳ • GitHub Actions ͰຖCIϏϧυνΣοΫ • ςϯϓϨʔτϦϙδτϦʔԽ͍ͯ͘͢͠ • Windowsαϙʔτ • QiitaͷίϝϯτཝͰखް͍αϙʔτ • teratailͷࣗͷهࣄʹରͯ͠ͷ࣭ʹࣗͰճ • Starཉ͠͞ʹTwitterͰڭ&վफ׆ಈ
Qiitaهࣄ • ࠷ڧͷLaravel։ൃڥΛ DockerΛͬͯߏங͢Δʲ৽ฤू൛ʳ https://qiita.com/ucan-lab/items/5fc1281cd8076c8ac9f4 • ʲೖʳ20ͰLaravel։ൃڥΛ രߏங͢ΔDockerϋϯζΦϯ https://qiita.com/ucan-lab/items/56c9dc3cf2e6762672f4
એ1 • Laravel Dacapo v4.0 Ӷҙ։ൃத https://github.com/ucan-lab/laravel-dacapo • ςʔϒϧఆٛΛYAMLͰఆٛ͠ɺϚΠάϨʔγϣϯ ϑΝΠϧΛੜ͢Δπʔϧ
• Laravel8ͷϚΠάϨʔγϣϯεΧογϯάͳͷ • طଘͷςʔϒϧ͔ΒYAMLఆٛΛٯੜ͢Δػೳ • طଘͷςʔϒϧͱͷࠩͷఆٛΛੜ͢Δػೳ
એ2 • Laravel Advent Calendar 2020 ࢀՃͯ͠·͢ʂ https://qiita.com/advent-calendar/2020/laravel • 1,
8, 15, 22, 24 ͕୲Ͱ͢ɻ • 15Docker Laravel Apache൛ͷهࣄͰ͢ɻ • ࠷ॳɺ͕ຒ·Βͳͯ͘ຒΊͳ͖Ό(໋ײ) ͰຒΊͨ݁Ռɺهࣄॻ͘ͷ͕େมͰ͢ɻɻ • ཧߘͯ͘͠ΕΔํ͍·ͨ͠Β ͝࿈བྷ͍ͩ͘͞
ษڧձͰฉ͖͍ͨ͜ͱ • phpͱcomposerͷίϯςφ͚ͯΔʁ • ϩʔΧϧڥSSLରԠͯ͠Δʁ • ίϯςφҰൠϢʔβʔͰ࣮ߦͯ͠Δʁ
͓ΘΓ