私は MacBook で XAMPP の最初の Drupal プロジェクトに取り組んでいます。これはプロトタイプであり、クライアントから肯定的なフィードバックを受けています。
2 週間後にプロジェクトを Linux VPS にデプロイします。サーバー上のすべてを最初から「やり直す」よりも良い方法はありますか?
- Drupalをインストールする
- モジュールのダウンロード (CCK、Views、Date、Calendar)
- コンテンツを作成する
- ...
ありがとう
私は MacBook で XAMPP の最初の Drupal プロジェクトに取り組んでいます。これはプロトタイプであり、クライアントから肯定的なフィードバックを受けています。
2 週間後にプロジェクトを Linux VPS にデプロイします。サーバー上のすべてを最初から「やり直す」よりも良い方法はありますか?
ありがとう
機能.module は、Drupal 構成の変更を管理するための非常に強力なツールです。
コンテンツ タイプ、CCK 設定、ビュー、Drupal 変数、コンテキスト、イメージキャッシュ プリセット、メニュー、タクソノミー、およびアクセス許可はすべて、バージョン管理にチェックインできる機能にまとめることができます。そこから、新しいサイトを展開したり、既存のサイトに変更をプッシュしたりすることは、機能 UI または Drush を使用して簡単に管理できます。
変数テーブルに保存される drupal 構成をエクスポートするために、必ず Strongarm.module をインストールしてください。uuid_features.module をインストールすることで、コンテンツ/ノード (つまり、私たちについて、よくある質問など) を機能に静的にすることもできます。
間違いなく、これは同じサイトで他の開発者と協力し、サイトを開発からテスト、ステージング、本番に移行するための最良の方法です。
これについて私の職場で広範な議論を行い、最終的に落ち着いた方法は、コードの更新 (モジュールとテーマを含む) を開発からステージング、さらには本番環境にプッシュすることでした。これには Subversion を使用しており、これまでのところうまく機能しています。
特に重要なのは、データベースを本番環境からプッシュバックするプロセスを自動化して、開発者がデータベースのコピーをできるだけ本番環境に近づけることができるようにすることです。ミッション クリティカルな環境では、モジュールの更新によってデータベースに問題が発生しないことを絶対に確認する必要があります。私たちが使用するプロセスは次のとおりです。
以上です。Drupal などのコミュニティ フレームワークに期待できないことの 1 つは、稼働後にデータベースをテストから運用に移行できることです。それ以降、すべてのデータベースの移動は本番環境からテスト環境へと移行するため、展開プロセスが多少複雑になります。気をつけて!:)
誰もDeploymentモジュールについて言及していないことに驚いています。プロジェクトページからの抜粋は次のとおりです。
...ユーザーが1つのDrupalサイトから別のサイトにコンテンツを簡単にステージングできるように設計されています。Deployは、エンティティ間の依存関係(ノード参照など)を自動的に管理します。さまざまなコンテンツステージング状況で使用するために簡単に拡張できる豊富なAPIを持つように設計されています。
Features モジュールを広範囲に使用して機能をキャプチャし、運用サイトに簡単にインストールします。
Drupal は使用しませんが、Joomla はよく使用します。すべてのファイルを Web ルート (私の場合は tar と gzip ですが、zip を使用することもできます) にアーカイブし、そのアーカイブを運用サーバーにアップロードして展開することでデプロイします。次に、SQL ダンプ (mysqldump -u user -h host -p databasename > dump.sql) を取得してアップロードし、リバース コマンドを使用してデータを挿入します (mysql -u produser -h prodDBserver -p prodDatabase < dump.sql)。 )。シェルにアクセスできない場合は、ファイルを 1 つずつアップロードし、PHP スクリプトを記述して dump.sql をインポートできます。
私が見つけて現在実装している優れた戦略は、デプロイモジュールの組み合わせを使用してコンテンツを移行し、次にdbscriptsと一緒にダッシュして、コアとモジュールをマージおよび更新することです。ライブコンテンツ、セキュリティ、モジュールの更新がある場合でも、データベースのマージを処理します。現在、svnで動作するように設定しています。
デプロイ (または Drupal) が初めての場合は、必ずすべてを一度に行ってください。別のコピーで作業しているときにコンテンツに影響を与えるユーザーがいる場合は、十分に注意する必要があります。
構造ではなく、実際のコンテンツ、分類法、ユーザーなどに関連するテーブルを残すことができます。次に、構成に関連するものをプッシュします。ただし、これにより、桁違いの複雑さが追加されます。
展開があなたにとって古い帽子である場合は、お詫び申し上げます。したがって、これは漠然と侮辱的です。