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
FrankenPHPでLaravelを動かしてみよう
Search
Capi
June 27, 2025
Technology
0
420
FrankenPHPでLaravelを動かしてみよう
PHP Conference Japan 2025の登壇資料
Capi
June 27, 2025
Tweet
Share
More Decks by Capi
See All by Capi
興味を発信しよう: 技術アウトプットが開く可能性
yousaku
0
460
コードは育つ、僕も育つ、 PHPと歩んだ設計物語
yousaku
0
340
コードを介してより良くエンジニア同士がコラボレーションするためにできること
yousaku
0
1k
Other Decks in Technology
See All in Technology
事業特性から逆算したインフラ設計
upsider_tech
0
240
20250807_Kiroと私の反省会
riz3f7
0
270
2025新卒研修・Webアプリケーションセキュリティ #弁護士ドットコム
bengo4com
3
9.5k
キャリアを支え組織力を高める「多層型ふりかえり」 / 20250821 Kazuki Mori
shift_evolve
PRO
2
130
生成AI活用のROI、どう測る? DMM.com 開発責任者から学ぶ「AI効果検証のノウハウ」 / ROI of AI
i35_267
4
130
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
9
2.7k
Intro to Software Startups: Spring 2025
arnabdotorg
0
280
AI時代の大規模データ活用とセキュリティ戦略
ken5scal
1
260
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
3
120
モノレポにおけるエラー管理 ~Runbook自動生成とチームメンションの最適化
biwashi
0
380
Kiro と Q Dev で 同じゲームを作らせてみた
r3_yamauchi
PRO
1
120
オブザーバビリティ文化を組織に浸透させるには / install observability culture
mackerelio
0
340
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Docker and Python
trallard
45
3.5k
Code Reviewing Like a Champion
maltzj
525
40k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.8k
Bash Introduction
62gerente
614
210k
Visualization
eitanlees
146
16k
Transcript
© 2012-2025 BASE, Inc. @PHP Conference Japan 2025(2025/06/28) FrankenPHPで Laravelを動かしてみよう
1
© 2012-2025 BASE, Inc. 2 氏名:Capi(かぴ) 所属:BASE株式会社 業務:Webアプリケーションエンジニア 趣味:飲酒、美術館にいく、技術系情報の収集 カピバラになりたい
ysssssss98 自己紹介 You-saku
© 2012-2023 BASE, Inc. アジェンダ 3
© 2012-2025 BASE, Inc. アジェンダ 4 • はじめに • ざっくりFrankenPHPとは
• FrankenPHPを試してみる • LaravelでWebアプリ作ってお手軽デプロイ • まとめ
© 2012-2023 BASE, Inc. はじめに 5
© 2012-2025 BASE, Inc. 6 スライドの中にDockerfileやPHPのコードが出てきます。 より良い書き方があるかもしれませんが、今回は「動かすこと」を第一の目的 にしています。ご了承ください。 何かあればぜひフィードバックください! はじめに
© 2012-2023 BASE, Inc. ざっくりFrankenPHPとは 7
© 2012-2025 BASE, Inc. 8 • Kévin Dunglasさん(Symfony作ってたりする人)によって開発された • CaddyというWebサーバー上で動くモダンなPHPアプリサーバー
• PHPプロジェクトを今までより高速に動かすことが可能 ざっくりFrankenPHPとは FrankenPHP.「FrankenPHP」. https://frankenphp.dev, (2025/06/28)
© 2012-2025 BASE, Inc. 9 2025年5月からPHP Fundationさんが公式サポート! 気になる方は「FrankenPHP PHP Foundation」で検索
ざっくりFrankenPHPとは The PHP Foundation.「FrankenPHP Is Now Officially Supported by The PHP Foundation」. https://thephp.foundation/blog/2025/05/15/frankenphp, (2025/06/28)
© 2012-2025 BASE, Inc. 10 「試してみたいな……(切実)」
© 2012-2025 BASE, Inc. 11
© 2012-2023 BASE, Inc. FrankenPHPを試してみる 12
© 2012-2025 BASE, Inc. 13 1. インストール(今回はbinary) curl https://frankenphp.dev/install.sh |
sh mv frankenphp /usr/local/bin/ 2. PHP単体ファイルを動かしてみる サーバー起動 frankenphp php-server -r public コマンドラインスクリプト実行 frankenphp php-cli public/index.php FrankenPHPを試してみる
© 2012-2023 BASE, Inc. LaravelでWebアプリを作って お手軽デプロイ 14
© 2012-2025 BASE, Inc. 15 今回の構成 最低限の機能だけを用意 • アプリサーバー(Laravel) •
DB(SQLite, MySQL, PostgreSQL) LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 16 自分が試したのは3種類の方法 1. 仮想環境を使わずにFrankenPHPで動かす 2. Laravel
Sailを使ってFrankenPHPで動かす 3. Sailを使わずDockerでFrankenPHPで動かす 1と2は公式ドキュメントに手順があるため容易です。3は少しDockerの知識が 必要です(volumeのマウント周り) LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 17 環境構築を補助してくれるツールがあります • laravel/octane(PHPのパッケージ) • dunglas/frankenphp(Docker
Image) 今回は両方使ってます LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 18 Viewが表示できるのか、きちんとFrankenPHPで動いているのかを確認 • welcomeページ • PHPが何で動いてるのか
LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 19 DBと接続するWebAPIも作る • Laravel(ver.12)のプロジェクトの作成時に 自動生成されるusersテーブルを利用 LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 20 Fly.io(https://fly.io)で公開する 選んだ理由は「楽にデプロイしたいから」、「DB, Redis, Sentryなど追加の設 定が容易だから」です。
デプロイに必要なもの 1. Fly.ioのアカウント 2. flyctl(command line tool) 3. Dockerfile 4. fly.ioに関する設定ファイル(flyctlで作成可能) LaravelでWebアプリを作ってお手軽デプロイ Fly.io.「https://fly.io/docs/about/brand」. https://fly.io, (2025/06/28)
© 2012-2025 BASE, Inc. 21 デプロイするプロジェクト構成とDockerfileはこんな感じ LaravelでWebアプリを作ってお手軽デプロイ
© 2012-2025 BASE, Inc. 22 無事デプロイ完了(dbのマイグレーションはsshして実行しました) Viewの様子、FrankenPHPで動いているのか、WebAPIの様子を確認 LaravelでWebアプリを作ってお手軽デプロイ 大丈夫そう!🎊
© 2012-2023 BASE, Inc. まとめ 23
© 2012-2025 BASE, Inc. まとめ 24 触ってみた個人的な所感です • FrankenPHPでLaravelを動かすことは難しくない •
超基本的な機能は動く • コンテナいけるのでパブリッククラウドでも動かせる • 「個人開発やPoC, MVP開発」で使うのはアリ • 日本語の情報はまだ多くない印象(探し方が下手なだけかも?)
© 2012-2025 BASE, Inc. まとめ 25 自分はまだまだ試したいことがたくさんある! • Caddyのカスタム •
Worker Modeの深掘り • binaryのPHPアプリを動かす • Laravelの他機能も使って少し複雑なアプリを構成する • Laravel以外のフレームワークも動かす • etc みんなでFrankenPHPを触って知見を増やしたい!
© 2012-2025 BASE, Inc. まとめ 26 今回の登壇に関するコード https://github.com/You-saku/phpconference2025_lt このスライドは公開予定です もう少し詳細な説明をしたZennの記事を出す予定です🙏