ビデオチュートリアルを再生

このシナリオは、既に GitHub(github.com)や BitBucket(bitbucket.org)などのリモートリポジトリを使用している場合に便利です。このリモートリポジトリに変更を送信すると、Plesk がリモートリポジトリから変更をプルしてウェブサイトにデプロイします。

Git リポジトリの複製

Git リポジトリを作成して、リモートリポジトリのクローンにすることができます。[ウェブサイトとドメイン]に進み、[Git]をクリックします。既にドメイン用の Git リポジトリが作成されている場合は、[リポジトリを追加]ボタンをクリックします。リポジトリの新規作成画面が表示されます。

image 76919

まず、コードをどこに保存するかを選択します。このシナリオでは、[GitHub や BitBucket などのリモート Git ホスティング]を選択します。

Remote Git repository. Enter the path to your remote repository in BitBucket or GitHub. You can enter it in either HTTPS or SSH format.

To connect to a private Git repository in Plesk for Linux, you can specify a username and password for the remote HTTPS repository. Alternatively, you can use an SSH key that Plesk generates (refer to Use SSH Connection for details).

Plesk for Windows does not support HTTP/HTTPS authentication. You can use the HTTP/HTTPS protocol only if a repository does not require authentication. To connect to a private Git repository, use an SSH key that Plesk generates (refer to Use SSH Connection for details).

[あなたのウェブサイト]セクションに、以下を指定します。

  • デプロイメントモード:デフォルトで、「自動デプロイメント」が使用されます。つまり、Git リポジトリへプッシュされたすべての変更は、本番サイトへ自動的にデプロイされます。デプロイメントモードを変更したい場合、[自動的にデプロイします]リンクをクリックして、[デプロイメントモード]ウィンドウが開いたら別のオプションを選択します。[手動デプロイメント]を選択した場合、Git リポジトリからホスティング用にファイルを手動でデプロイする必要があります。[デプロイメントなし]を選択した場合、ファイルは本番サイトにデプロイされません(これは、コードの保存や交換のためなどに使用できます)。

    image 76254

  • ウェブサイトの Git ファイルを公開するためのターゲットディレクトリ。デフォルトで /httpdocs ディレクトリが使用されます。ディレクトリ名をクリックして、他の既存ディレクトリに変更可能です。

    image 76255

[OK]をクリックします。Plesk がリモートリポジトリへの接続を試みて、リポジトリを複製します。

image 76455

複製が正常に完了したことが進捗ダイアログに表示されたら、新しいリポジトリが[Git]ページに表示されます。

image 76456

新しいリポジトリは[ウェブサイトとドメイン] > [Git]に表示されます。リモートリポジトリの名前が Git リポジトリ名として使用されます。リポジトリは後で名称変更できます(「リポジトリを名称変更または削除する」セクションを参照してください)。

作成されるリポジトリは、リモートリポジトリのクローンであり、リモートリポジトリから変更をプルしてターゲットディレクトリにデプロイするために使用されます。

image 76920

SSH 接続を使用する

リモート Git リポジトリへの接続に SSH を使用できます。この場合、新しいリポジトリの追加時に、リモートリポジトリの URL を SSH 形式で指定します。[SSH 公開キー]フィールドが表示され、Plesk で自動生成された SSH 公開キーが表示されます。

image 77959

この画面で[OK]をクリックする前に、リモート Git リポジトリの設定に SSH キーを追加する必要があります。詳しくは、GitHub および BitBucket の SSH キーの追加方法に関するドキュメントを参照してください。

ファイルのプルとデプロイ

ウェブサイトのファイルをコミットし、リモートリポジトリにプッシュした後で、[ウェブサイトとドメイン]に移動して、リポジトリ名の横の[アップデートをプル]ボタンをクリックします。複製された Git リポジトリへリモートリポジトリの変更がプルされます。

最後のコミット情報は、[ウェブサイトとドメイン] > [Git]で参照できます。

デフォルトで、Plesk は自動デプロイメントモードを使用します。つまり、リポジトリへプッシュされたファイルは、即時にターゲットディレクトリへデプロイされます(必要に応じてこのモードをオフにできます。後述の「デプロイメントモードを選択する」セクションを参照してください)。

たとえば、「Hello! Welcome to my site」というテキストの含まれる index.html ファイルをプルすると、すぐにウェブサイト URL をクリックして変更を参照できるようになります。

image 76922

ブランチまたはパスを変更する

新しいブランチからデプロイする

一般的な慣習として、1 つのリポジトリで複数のブランチを使用することがあります。一度にアクティブにできるブランチは 1 つだけです。デフォルトで、master ブランチがデプロイメントに使用されます。

新しいブランチを追加するには、リモートリポジトリでブランチを作成してから、変更をプルする必要があります。その後、Plesk で 2 つ(以上)のアクティブブランチからいずれかを選択できるようになります。[ウェブサイトとドメイン] > [Git]に移動し、[ブランチおよびパスを変更]をクリックして、開いたウィンドウで[ブランチ]メニューからブランチ名を選択します。

image 76275

新しいブランチを選択して[OK]をクリックすると、Plesk に新しいアクティブブランチが表示されます。

image 76923

デプロイメントパスを変更する

デフォルトで、ウェブサイトでの Git ファイルの公開には /httpdocs ディレクトリが使用されます。デプロイメントパスを変更したい場合、[ウェブサイトとドメイン] > [Git]に移動して[ブランチおよびパスを変更]リンクをクリックして、開いたウィンドウで新しいディレクトリを選択します。

image 76278

デプロイメントモードを選択する

リポジトリのデプロイメントモードを選択できます。[ウェブサイトとドメイン] > [Git]に移動して[リポジトリ設定]をクリックして、[デプロイメントモードを選択]でいずれかのオプションを選択します。

  • 自動デプロイメント: Plesk ですべての変更を本番サイトへ即時にデプロイしたい場合は、これを選択します。

  • 手動デプロイメント: この場合、[ウェブサイトとドメイン] > [Git][リポジトリからデプロイ]ボタンをクリックすることにより、ファイルを手動でデプロイする必要があります。また、[ウェブサイトとドメイン]でリポジトリ名の横の[デプロイ]ボタンをクリックしても、ファイルを手動でデプロイできます。

  • デプロイメントなし(リポジトリホスティング): この場合、ファイルは本番サイトへデプロイされません。このオプションは、Git リポジトリをコードの保存や交換のみに使用したい場合などに使用できます。

    image 76924

自動プルにウェブフックを使用する

ウェブフックを使用して、リポジトリへのファイルのプッシュなど特定のイベントが発生したときに Plesk に通知するようにリモートリポジトリを構成できます。詳しくは、BitBucket または GitHubでのウェブフックの管理に関するドキュメントを参照してください。

ウェブフック URL はリポジトリに対して自動的に生成されます。ウェブフック URL を確認するには、[リポジトリ設定]をクリックします。

image 76927

ウェブフック URL をコピーしてリモートリポジトリへ追加し、リポジトリへのプッシュが発生したときにトリガされるように構成します。この結果、リモートリポジトリへのファイルのプッシュが行われるたびに、Plesk がプッシュイベントについて通知を受けてファイルを自動的にプルするため、ユーザが[アップデートをプル]ボタンをクリックする必要はありません。リポジトリに自動デプロイメントが構成されている場合、プルされたファイルは即時にウェブサイトへとデプロイされます。

注釈

Plesk が自己署名証明書によって保護されている場合、SSL/TLS ハンドシェイクの問題により、TTPS プロトコル経由で呼び出されたウェブフックが機能しない可能性があります。これが発生した場合には、ウェブフック URL に HTTP プロトコルを指定してください。

追加のデプロイメントアクションを有効化する

多くの場合、ファイルの公開だけではウェブサイトのデプロイメントが完了しません。たとえば、Ruby on Rails などのフレームワークを使用している場合、  bin/rails db:migrate のようなコマンドを実行して、デプロイメント後にデータ移行作業を実行する必要があります。

Plesk では、ウェブサイトにファイルをデプロイするたびに実行される追加コマンドを 1 つ以上定義できます。

[ウェブサイトとドメイン] > [Git]に移動し、[リポジトリ設定]をクリックして、[追加のデプロイアクションを有効化]を選択し、リポジトリコンテンツがデプロイされるたびに実行すべきシェルコマンドを 1 つ以上指定します。個々のコマンドは 1 行ずつ入力してください。

image 76929

注釈

Linux では、ドメインのシステムユーザに対して SSH アクセスが禁止されている場合、指定されたすべてのコマンドが chroot 環境で実行されます。契約のシステムユーザのホームディレクトリがこの契約のファイルシステムのルートとして扱われ、chroot jail の外にある実行可能ファイルは実行できません。たとえば、サイトのパスが /var/www/vhosts/example.com/httpdocs である場合、chroot 環境ではパスが ./httpdocs になります。そのため、/httpdocs ディレクトリより 1 レベル以上上ではコマンドを実行できません。

コミットログを表示する

現在のブランチのコミット履歴をすべて表示するには、[ウェブサイトとドメイン] > [Git]に移動して[コミットログ]リンクをクリックします。各コミットに、時間、一意の ID、ユーザ名、コミットメッセージが表示されます。コミットログを更新するには、[更新]をクリックします。

image 76930

任意のパラメータでコミットログをフィルタできます。たとえば、特定の日付以降に特定のユーザによって行われたすべてのコミットを検索できます。これには、image 76269 ボタンをクリックし、検索パラメータを入力して、[検索]をクリックします。

image 76931

リポジトリを名称変更または削除する

リポジトリ名はいつでも変更できます。たとえば、デプロイメントが終了した後で、リポジトリ名を「website-dev」から「website」へ変更したい場合、[ウェブサイトとドメイン] > [Git]に移動し、[リポジトリ設定]をクリックして、[リポジトリ名]フィールドに新しい名前を入力します。

リポジトリを削除したい場合、[Git]画面で[リポジトリを削除]リンクをクリックします。この場合、Plesk はリポジトリのみを削除し、公開されたデータの含まれるターゲットディレクトリはそのまま残されます。