Pantheonで構築したDrupal 8のサイトを別の環境に移動する方法

この記事の目次

Pantheonは簡単にDrupalのサイトを公開できる非常に便利なサービスです。

私達が執筆した書籍「Drupal 8 スタートブック」でも、サイト構築にはPantheonを利用しています。

drupal8 start book


しかし、Pantheonで構築したDrupal 8のサイトをローカル環境や別のサーバーに移動するには、 terminus というPantheon専用のCLIを使って hash_salt という値を取得する必要があります。

https://pantheon.io/docs/settings-php/

これは開発者以外の方には少し難しい方法です。

そこで、Drupalのサイト上に hash_salt の値を表示するモジュール 「hash_salt_helper」 を作成してgithubに公開しました。

https://github.com/annai-inc/hash_salt_helper

このモジュールを使って、Pantheon上で構築したサイトをローカル環境や別のサーバーに移動する方法をご紹介します。

Pantheonのダッシュボードでの作業

1. Pantheonのダッシュボードにログインします。

2. 「Backups」に進み、「create new backup」ボタンを押して新しいバックアップを作成します。

3. 作成されたCode, Database, Filesのバックアップをダウンロードします。

Pantheonでのバックアップ作成方法については以下を参考にしてください。
https://pantheon.io/docs/create-backups/#create-a-backup

4. 「Code」に進み、「Connection Mode」 を 「SFTP」に変更します。

Connection modeの変更については以下を参考にしてください。
https://pantheon.io/docs/sftp/#sftp-mode

Drupal上での作業

ここからはPantheon上に作成したDrupalサイト上での作業となります。

5. Update Managerモジュールを有効にします。

hash_salt_helper


6. https://github.com/annai-inc/hash_salt_helper にアクセスし、「release」 -> 「8.x-1.0」 に進み 「Source code (tar.gz)」をダウンロードします。

7. 「管理」 -> 「機能拡張」 -> 「新しいモジュールをインストール」に進み、6.でダウンロードしたファイルをアップロードします。

hash_salt_helper


8. 「管理」 -> 「環境設定」 -> 「開発」 -> 「Show Hash salt」に進みます。

hash_salt_helper


9. ここに hash_salt を含む設定ファイルの雛形が表示されるので、settings.local.php という名前でファイルを新規に作成し、表示されている内容をコピーして保存します。DATABASE_NAME, USER_NAME, PASSWORD は移動先の環境側に合わせてください。

setting

 

移行先環境での作業

10. Drupalが動作する環境をPCやVPS、レンタルサーバー上で構築し、3.で取得した各種バックアップを配置します。filesのバックアップは解凍すると files_{pantheonのステージ名} (例: devだと files_dev) という名前のディレクトリになるので、 files にリネームして sites/default/files として配置してください。Drupalの環境構築については、以下の記事が参考になります。

11. sites/default ディレクトリに 9. で作成した settings.local.php をコピーします。

これでPantheonで構築したサイトの移行は完了します。