Drupal 公式ドキュメント Update core via Composer を参考
https://www.drupal.org/docs/8/update/update-core-via-composer

Composer で Drupal を管理していることが前提になります。

私は docker 環境なので以下のようなコマンドになります。適宜ご自身の環境に合わせてください。

Drupal Core アップデートが利用可能かどうか確認
$ docker-compose exec php composer outdated "drupal/*" --working-dir="/var/www/html"

drupal/core             8.6.13       8.7.0        Drupal is an open source content

左の数字が現在のバージョン、右側の数字が利用可能なアップデート。赤色の数字はセキュリティアップデートです。早急にアップデートしましょう。

まずはバックアップから
WEB GUI の Backup and Migrate モジュールは簡単で便利です。

コマンドライン CLI では以下のような方法があります
サイトのファイルを丸ごとコピーでバックアップ
$ cp -rp /path/to/drupal_site /path/to/backup_dir 
$ drush
 sql-dump > /path/to/backup_dir/database-backup.sql

$ docker-compose exec php drush sql-dump > /path/to/backup_dir/database-backup.sql --root="/var/www/html"

サイトをメンテナンスモードに
$ drush sset system.maintenance_mode 1 --input-format=integer
$ docker-compose exec php drush sset system.maintenance_mode 1 --input-format=integer -root="/var/www/html"

$ composer update drupal/core --with-dependencies

$ docker-compose exec php composer update drupal/core --with-dependencies --working-dir="/var/www/html"

/***

drupal-composer/drupal-project でサイトを作成していたら下記コマンド
$ composer update drupal/core webflo/drupal-core-require-dev --with-dependencies
$ docker-compose exec php composer update drupal/core webflo/drupal-core-require-dev --with-dependencies --working-dir="/var/www/html"

***/

$ drush updatedb
$ docker-compose exec php drush updatedb --root="/var/www/html"

$ drush cr
$ docker-compose exec php drush cr --root="/var/www/html"

サイトメンテナンスモードを解除
$ drush sset system.maintenance_mode 0 --input-format=integer
$ docker-compose exec php drush sset system.maintenance_mode 0 --input-format=integer -root="/var/www/html"

Comments