Drupal10を最新版にアップデートする
はじめに
Drupalのセキュリティパッチは頻繁にアップデートされていますので、公開されているサイトは常に最新版にしておく必要があります。ここでは、バックエンド側で実施する手順を説明しています。
ちなみにDrupal9以降のリリースサイクルは次のとおりです。
- 毎月パッチリリース日程を固定して、バグフィックスを提供
- 6ヶ月ごとに新しいマイナーバージョンがリリースされる。これにはAPIの変更や新機能が含まれることがある
- 各マイナーアップデートに対するセキュリティアップデートは、次のマイナーバージョンがリリースされた後も6ヶ月間提供される(つまりコミュニティによる各マイナーアップデートのサポートは合計1年)
Drupalのバージョン確認
Drupalのバージョン確認の方法は、いくつかありますがここでは管理画面からGUIで確認する方法を紹介します。
1.管理者権限でログインする
2.メニューバーから、Reportsを選択する
3.Status reportを選択する(下図イメージ1)
4.Drupal VersionブロックのDrupalバージョンを確認する(下図イメージ2)
Drupal10のバックアップ
Drupalのバックアップはデータベースのバックアップとファイルのバックアップの両方を同じタイミングで実施する必要があります。
データベースのバックアップ
MYSQLの場合、mysqldumpコマンドを使ってバックアップする方法もありますが、ここではDRUSHのデータベースエクスポートコマンドを使用します。
drush sql:dump > {バックアップファイルパス}
lando 環境の場合は以下のコマンドになります
lando drush sql:dump > {バックアップファイルパス}
ファイルのバックアップ
ファイルはドキュメントルート(webフォルダ)をすべて圧縮してバックアップします
ここではTARコマンドを使用します
tar cvzf {バックアップファイルパス} ./web
Drupal10のバージョンアップ
Drupal10のコアモジュールのバージョンアップは、次の3つの方法があります。
- Composerでおこなう
- マニュアルでおこなう
- Drushでおこなう
ここでは、ComposerでDrupal10のコアモジュールのバージョンアップを行う方法について説明しています。
ComposerでDrupalを最新版にアップデートする
DrupalがComposerのdrupal/core-recomendedコマンドでインストールされている場合は、プロジェクトフォルダで以下のコマンドをタイプしてください。
パッケージの一覧が表示されるはずです。
composer show drupal/core-recommended
次に、念のため、実際のアップデートする前に--dry-run
オプションでエラーが出ないことを確認してください。
composer update "drupal/core-*" --with-all-dependencies --dry-run
エラーが表示されていなければ、コマンドでアップロードを実施します
composer update "drupal/core-*" --with-all-dependencies
Drupalコアのアップデートが成功したら、コントリビュートモジュールのアップデートを実施します。
個別に指定するのは面倒なのでコントリビュートモジュールのアップデートは以下のコマンドで一気にに行い、エラーが発生した場合は個別に確認してエラー箇所を対応後にサイドコマンドを実施してください。(個々のエラー対応方法はdrupal.orgを確認するかググって調べましょう)
composer update
トラブルシューティング
バージョンが更新されない場合、上記「特定のバージョンにアップデートする」を参考にバージョン番号を指定してインストールを実施する。エラーまたはワーニングが表示される場合は、それを参考に原因を調べる。
また以下のコマンドを実行すると、対象モジュールのバージョンが更新されない原因が表示されます。
composer why-not drupal/core 10.2.2
データベースの更新
Web ベースでもデータベースの更新をすることができますが、 Drush が実行できる環境がある場合は、こちらのほうが速くて簡単です。
Drushを使用する場合は以下のコマンドで完了します。
drush updatedb
WEBベースの場合は、画面から「データベースのアップデートスクリプト」リンクをクリックすると、データベースの更新ページに移動します。ここで指示に従って進めていくと更新が完了します
最後に次のコマンドでキャッシュのクリアとリビルドは忘れずに。
drush cr
以上になります。
この記事に関するご質問やご意見などございましたらお問い合わせフォームからお気軽にご連絡ください。