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

このシナリオでは、ローカルリポジトリから Plesk へ変更を送信すると、Plesk がこの変更をウェブサイトにデプロイします。

Git リポジトリを作成する

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

image-Git-local-create

まず、コードをどこに保存するかを選択します。このシナリオでは、 [ワークステーション上のローカルリポジトリ] を選択します。

Plesk の Git リポジトリ: リポジトリ名を指定します。デフォルトで、ドメインの名前と .git サフィックスが使用されます。

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

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

    image-Git-push-Deployment-mode

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

    image-Git-push-Deployment-path

[OK] をクリックします。新しいリポジトリが作成され、 [Git] ページに表示されます。

image-Git-local-created

表示されるリポジトリ URL は、使用しているデータ転送プロトコルによって異なります。以下のいずれかのプロトコルを選択できます。

  1. SSH(Linux のみ)- このプロトコルは、SSH ウェブホスティングアクセスがドメインに対して有効になっている場合にデフォルトで使用されます。ドメインへの SSH アクセスを設定するには、 [ウェブサイトとドメイン]> [ウェブホスティングアクセス] に移動し、 [SSH 経由のサーバアクセス] メニューで /bin/bash または /bin/sh を選択します。この場合、リポジトリの URL は「user1@example.net:~/repos/example.git」のような形式になります。
  2. HTTPS - このプロトコルは、SSH ウェブアクセスが拒否されており、尚且つドメインに対して SSL/TLS が構成されている( [ホスティング設定]>[SSL/TLS サポート] )場合にデフォルトで使用されます。この場合、URL は「https://user1@example.net/plesk-git/example.git」のような形式になります。
  3. HTTP - このプロトコルは、SSH ウェブアクセスが拒否されており、尚且つドメインに対して SSL/TLS が構成されていない場合にデフォルトで使用されます。この場合、リポジトリの URL は「http://user1@example.com/plesk-git/example.git」のような形式になります。

[ヘルプ] リンクで表示される指示に従って、ローカルリポジトリを初期化します。

image-Git-How-To

リポジトリを初期化するときは、 [ウェブサイトとドメイン]> [Git] でコミット情報とアクティブなブランチ名を表示できます。デフォルトでは master ブランチが Plesk での作業用に使用されます。後でブランチを追加できます(「 ブランチまたはパスを変更する 」セクションを参照してください)。

image-Git-init-commit

これで、ローカルリポジトリからウェブサイトファイルをコミットし、サーバのリポジトリへプッシュできるようになります。

ファイルのプッシュとデプロイ

ローカルリポジトリからウェブサイトファイルをコミットし、これらをサーバリポジトリへプッシュすると、 [ウェブサイトとドメイン]> [Git] ページにコミット情報が表示されます。

image-Git-local-commit

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

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

image-Git-website

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

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

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

ブランチを 1 つ以上追加するには、ローカルリポジトリでブランチを作成する必要があります。たとえば、以下のコマンドを使用して、 dev ブランチを追加できます。

git branch dev

git checkout dev

次に、以下のコマンドを使用してこのブランチへファイルをコミットし、サーバのリポジトリへプッシュします。

git commit -m "changes to branch"

git push -u origin dev

2 つのアクティブブランチのいずれかを選択できるようになります。 [ウェブサイトとドメイン]> [Git] に移動し、 [ブランチおよびパスを変更] リンクをクリックして、開いたウィンドウで [ブランチ] メニューからブランチ名を選択します。

image-Git-push-change-branche

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

image-Git-local-branch

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

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

image-Git-push-change-folder

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

リポジトリのデプロイメントモードを選択するには、 [リポジトリ設定] をクリックして、 [デプロイメントモードを選択] の下でいずれかのオプションを選択します。

  • 自動デプロイメント: Plesk は、Plesk リポジトリに変更がプッシュされると即時に本番サイトへデプロイします。

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

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

    image-Git-local-select-deploy-mode

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

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

Plesk では、ウェブサイトにファイルがデプロイされるたびに毎回実行されるさまざまな追加アクションを設定できます。

[ウェブサイトとドメイン]> [Git] に移動し、 [リポジトリ設定] をクリックして、 [追加のデプロイアクションを有効化] を選択し、このリポジトリがデプロイされるたびに実行すべきシェルコマンドを 1 つ以上指定します。各コマンドは新しい行から開始する必要があります。

image-Git-local-actions

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

コミットログを表示する

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

image-Got-Commit-Logs

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

image-Git-Commit-Logs-filter

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

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

リポジトリを名称変更した後で、以下のコマンドを使用して、新しいリポジトリ URL で機能するようにローカルリポジトリを構成する必要があります。

git remote set-url origin [new URL]

たとえば、リポジトリを「 example 」から「 example1 」に名称変更するには、以下のコマンドを実行します。

git remote set-url origin user1@example.com:~/repos/example1.git

リポジトリを削除したい場合、 [ウェブサイトとドメイン]> [Git][リポジトリを削除] リンクをクリックします。この場合、Plesk はリポジトリのみを削除し、公開されたデータの含まれるターゲットディレクトリはそのまま残されます。