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
260
ゆうきゃんどっかー のススメ In #TechCafe
ゆうきゃん
December 09, 2020
Tweet
Share
More Decks by ゆうきゃん
See All by ゆうきゃん
Svelte Todo アプリハンズオン資料
ucan_lab
0
40
開発体験を爆上げするLaravel Dacapo マイグレーションサポートツールのススメ
ucan_lab
0
1.4k
モテるコードの書き方
ucan_lab
0
250
momochanにも分かるPSR講座
ucan_lab
0
45
ターミナルtips
ucan_lab
0
95
Laravel Dacapo 2019-09-06 YYPHP 99
ucan_lab
0
270
Laravel + Docker 環境構築ハンズオン
ucan_lab
2
470
Laravel+GraphQL 良かったこと 困ったこと 悲しかったこと
ucan_lab
2
750
バージョン管理ツールについて振り返り
ucan_lab
0
74
Other Decks in Programming
See All in Programming
TokyoR#119 bignners session2 Visualization
kotatyamtema
0
130
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
640
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.8k
クラシルを支える技術と組織
rakutek
0
190
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
320
Repenser les filtres API Platform: une nouvelle syntaxe
vinceamstoutz
2
150
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
1
310
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
790
麻雀点数計算問題生成タスクから学ぶ Single Agentの限界と Agentic Workflowの底力
po3rin
5
2k
なぜGoのジェネリクスはこの形なのか? Featherweight Goが明かす設計の核心
ryotaros
7
960
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
140
議事録の要点整理を自動化! サーバレス Bot 構築術
penpeen
3
1.6k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
Balancing Empowerment & Direction
lara
4
660
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Being A Developer After 40
akosma
90
590k
Bash Introduction
62gerente
615
210k
It's Worth the Effort
3n
187
28k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
600
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
GraphQLとの向き合い方2022年版
quramy
49
14k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Documentation Writing (for coders)
carmenintech
75
5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
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ରԠͯ͠Δʁ • ίϯςφҰൠϢʔβʔͰ࣮ߦͯ͠Δʁ
͓ΘΓ