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
100
FrankenPHPでLaravelを動かしてみよう
Capi
June 27, 2025
Tweet
Share
More Decks by Capi
See All by Capi
コードを介してより良くエンジニア同士がコラボレーションするためにできること
yousaku
0
730
Other Decks in Technology
See All in Technology
Node-RED × MCP 勉強会 vol.1
1ftseabass
PRO
0
180
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
110
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.6k
KubeCon + CloudNativeCon Japan 2025 Recap
ren510dev
1
340
一体いつからSRE NEXTがSREだけのカンファレンスだと錯覚していた? / When did you ever get the idea that SRE NEXT was a conference just for SREs?
vtryo
1
140
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
120
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
2
6.1k
Lambda Web Adapterについて自分なりに理解してみた
smt7174
5
150
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
220
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
160
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
260
Witchcraft for Memory
pocke
1
710
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Automating Front-end Workflow
addyosmani
1370
200k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Typedesign – Prime Four
hannesfritz
42
2.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Building an army of robots
kneath
306
45k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
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の記事を出す予定です🙏