先日の記事でご紹介した、ごーやさんのブログやSymfony Japanさんのチュートリアルではバージョンが4系や3系でうまく動作出来なかったため、インストールした5系で対応できるものを探しました。(symfonyインストールしたら自然と5系になっていた)
※注意※
もしかしたら、私の探し方が下手で、ちゃんと探せば、ごーやさんのブログにもSymfony Japanさんのサイトにも、Symfony5系に対応したチュートリアルはあるかもしれません。
再度探し直して、次はこちらのサイトを参考にさせていただくことに。こちらの方は、公式サイトのbookにも載っている5系のものを取り組まれたようです。
The Fast Track – 基礎から最速で学ぶ Symfony5 入門 を読み解いた! – Qiita
6系のものも、公式サイトにありますね↓
The Fast Track – 基礎から最速で学ぶ Symfony 入門 (Symfony 6.2 Docs)
とりあえず今回は、5系のもので学んでいってみようと思います。
そして、参考サイトの記事を執筆された方は私と使っているエディタが違うので、そこにも気をつけながら取り組んでみたいと思います。
とりあえず、「symfony check:requirements」までは終えているので、【プロジェクトの作成】から取り組むことに。
プロジェクトの作成
composer create-project symfony/skeleton guestbook "5.1.*"
cd guestbook
composer require symfony/requirements-checker
まずは1行目を実行したところ
symfony/flex contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust “symfony/flex” to execute code and wish to enable it now? (writes “allow-plugins” to composer.json) [y,n,d,?]
このエラーメッセージは、Symfonyアプリケーションの開発に必要なComposerプラグインである
symfony/flex
が、現在のallow-plugins
構成に含まれていないことを示しています。このエラーメッセージは、Composerがこのプラグインを使用しようとしたが、許可されていないために発生しました。対処方法は、プラグインを許可するかどうかを決定し、適切な手順に従うことです。エラーメッセージには、プラグインを許可するためのリンクが記載されています。このリンクにアクセスすると、
allow-plugins
構成についての情報が表示されます。これに従って、Composerのallow-plugins
構成にsymfony/flex
プラグインを追加して、Composerがプラグインを使用できるようにすることができます。このエラーメッセージには、
y
,n
,d
,?
のいずれかを入力するように求めるプロンプトも表示されます。これは、Composerがプラグインを有効にするかどうかを尋ねるものです。y
を入力してプラグインを有効にすることができます。n
を入力してプラグインを無効にすることもできます。d
を入力すると、プラグインの詳細情報が表示されます。?
を入力すると、利用可能なオプションの一覧が表示されます。例えば、
y
を入力すると、Composerがallow-plugins
構成にsymfony/flex
プラグインを追加して、プラグインを有効にします。また、composer.json
ファイルにも変更が加えられます。
とありましたので、ここは「y」を入力してエンター。
無事に必要なプラグインをインストールできました。その後は
symfony/framework-bundle instructions:
- Run your application:
- Go to the project directory
- Create your code repository with the git init command
- Download the Symfony CLI at https://symfony.com/download to install a development web server
- Read the documentation at https://symfony.com/doc
Found 1 security vulnerability advisory affecting 1 package.
Run composer audit for a full list of advisories.
No security vulnerability advisories found
と表示されました。
このターミナルの表示は、
symfony/framework-bundle
パッケージのインストール後に表示されるメッセージです。このパッケージは、Symfonyフレームワークのコア機能の一部であり、アプリケーションを実行するために必要な依存関係の1つです。このメッセージには、次の2つのセクションが含まれています。
symfony/framework-bundle
のインストール手順: これは、アプリケーションを実行するための基本的な手順を示しています。プロジェクトディレクトリに移動して、git init
コマンドでコードリポジトリを作成し、開発用のWebサーバーをインストールする必要があります。Webサーバーには、Symfony CLIをダウンロードしてインストールすることが推奨されています。- Composerのセキュリティ脆弱性に関するアドバイザリー: このメッセージには、
composer audit
コマンドを実行して、パッケージに影響を与える可能性のあるセキュリティ脆弱性について警告するリンクが含まれています。この場合、脆弱性の警告は表示されませんでした。以上のメッセージは、Symfonyアプリケーションを開発するために必要な手順と情報を提供するために表示されるものです。必要に応じて、手順や警告に従ってアプリケーションを構成することができます。
先に進みます。次に、
composer create-project symfony/skeleton guestbook "5.1.*"
cd guestbook
composer require symfony/requirements-checker
こちらの2行目と3行目を順次入力してエンター。
すると今度はターミナル後半に
Found 1 security vulnerability advisory affecting 1 package.
Run composer audit for a full list of advisories.
Using version ^2.0 for symfony/requirements-checker
セキュリティ脆弱性 について表示されました。
このターミナルの表示は、Composerが
symfony/requirements-checker
パッケージのバージョン^2.0
をインストールし、1つのセキュリティ脆弱性アドバイザリーがあることを通知しています。セキュリティ上の理由から、この脆弱性が修正された最新バージョンにアップデートすることを強くお勧めします。対処方法としては、以下の手順に従うことができます。
- ターミナルで
composer audit
を実行し、アドバイザリーのリストを確認します。これにより、アプリケーションにインストールされているすべてのパッケージの脆弱性情報が表示されます。composer update
を実行して、symfony/requirements-checker
パッケージを最新バージョンにアップデートします。これにより、最新の修正プログラムが適用され、脆弱性が解消されます。- パッケージをアップグレードする場合、依存関係の変更があるため、アプリケーションの動作に影響を与える可能性があるため、テストを実行して問題を修正する必要があります。
- 必要に応じて、アップグレードを実行する前に、アプリケーションのコードをバージョン管理システムにコミットすることをお勧めします。これにより、問題が発生した場合に変更を元に戻すことができます。
上記の手順に従って、パッケージをアップグレードし、アプリケーションのセキュリティを改善することができます。
少し悩みましたが、今回はローカル環境で、まずは触ってみるところをメインにしたいので、こちらの対応は一旦置いておくことにしました。
以上で、プロジェクトの作成が終わりました!
次回は、ファイル構成などをじっくり見ていくことにします!