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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Capi
June 27, 2025
Technology
870
1
Share
FrankenPHPでLaravelを動かしてみよう
PHP Conference Japan 2025の登壇資料
Capi
June 27, 2025
More Decks by Capi
See All by Capi
OSSに “コード” で貢献したいんです
yousaku
0
810
“RFCに書いてある” を体験した話 - 技術の深さを知る方法 -
yousaku
0
240
少し複雑で、少しトラフィックが多いサービスを開発するためにしてること
yousaku
0
21
ペアプログラミングとの出会いで広がった自分の開発領域と挑戦のチャンス
yousaku
0
380
興味を発信しよう: 技術アウトプットが開く可能性
yousaku
0
640
コードは育つ、僕も育つ、 PHPと歩んだ設計物語
yousaku
0
650
コードを介してより良くエンジニア同士がコラボレーションするためにできること
yousaku
0
1.3k
Other Decks in Technology
See All in Technology
サイバーセキュリティ概論 / Introduction to Cybersecurity
ks91
PRO
0
130
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
610
oracle-to-databricks-migration-with-llm-and-dbt
casek
1
420
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
2
200
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
150
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
140
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
170
オンコールの負荷軽減のためのBits Assistant 活用方法 / How to Use Bits Assistant to Reduce the Workload on On-Call Staff
sms_tech
1
380
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
330
Javaで学ぶSOLID原則
negima
1
270
Datadog 認定試験の概要と対策
uechishingo
0
230
[モダンアプリ勉強会]今更聞けないGit/GitHub入門
tsukuboshi
0
170
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
780
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
400
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
sira's awesome portfolio website redesign presentation
elsirapls
0
270
A designer walks into a library…
pauljervisheath
211
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
200
74k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
320
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
370
Paper Plane
katiecoart
PRO
1
51k
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の記事を出す予定です🙏