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
350
FrankenPHPでLaravelを動かしてみよう
PHP Conference Japan 2025の登壇資料
Capi
June 27, 2025
Tweet
Share
More Decks by Capi
See All by Capi
コードは育つ、僕も育つ、 PHPと歩んだ設計物語
yousaku
0
250
コードを介してより良くエンジニア同士がコラボレーションするためにできること
yousaku
0
990
Other Decks in Technology
See All in Technology
経理出身PdMがAIプロダクト開発を_ハンズオンで学んだ話.pdf
shunsukenarita
1
270
完璧を目指さない小さく始める信頼性向上
kakehashi
PRO
0
130
Unson OS|48時間で「売れるか」を判定する AI 市場検証プラットフォーム
unson
0
160
恐怖!テストコードなき夜
tsukuboshi
2
110
AIに全任せしないコーディングとマネジメント思考
kikuchikakeru
0
330
風が吹けばWHOISが使えなくなる~なぜWHOIS・RDAPはサーバー証明書のメール認証に使えなくなったのか~
orangemorishita
11
3.8k
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
1
550
Bet "Bet AI" - Accelerating Our AI Journey #BetAIDay
layerx
PRO
3
760
[MIRU25] NaiLIA: Multimodal Retrieval of Nail Designs Based on Dense Intent Descriptions
keio_smilab
PRO
1
170
AI時代の知識創造 ─GeminiとSECIモデルで読み解く “暗黙知”と創造の境界線
nyagasan
0
180
MCPと認可まわりの話 / mcp_and_authorization
convto
2
350
みんなのSRE 〜チーム全員でのSRE活動にするための4つの取り組み〜
kakehashi
PRO
2
110
Featured
See All Featured
Speed Design
sergeychernyshev
32
1k
Unsuck your backbone
ammeep
671
58k
Code Review Best Practice
trishagee
69
19k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
A better future with KSS
kneath
238
17k
Site-Speed That Sticks
csswizardry
10
730
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Automating Front-end Workflow
addyosmani
1370
200k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
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の記事を出す予定です🙏