it-swarm-ja.com

DrushでリモートDrupalサイトを制御する

数週間前から、さまざまなスクリーンキャストを見ていて、Drushを自分のサイトで操作できる人たちを羨望の的に思っています。モジュールの有効化/無効化、またはキャッシュのクリア時。時間の節約は計り知れません。

ただし、資格のある流暢なコンソールオペレーターというよりは、フロントエンドの開発者として、リモートサイトでのDrushの使用に関しては完全に迷っています。ほとんどのgoogledリーディングはローカルサイトについて扱い、ローカルインストールへのパスを指定するか、サイトがsite-installコマンドを使用して作成されたと想定しています。 Drushを既存のリモートサイトに追加することに興味があります。 Drushをそのリモートサイトで使用するにはどうすればよいですか?

今、Drushの使用の全体像を把握しようとしているので、必要な環境とツールについて、どこにも見つからなかった主要な知識を見逃してしまったのではないかと思います。

  1. デスクトップにコマンドラインDrushをインストールする以外に、リモートサイトにDrushモジュールをインストールする必要がありますか?またはDrupalコアのDrushで制御可能なすぐに使用可能な(そうであれば、drupal.org/project/drushで入手可能なDrushモジュールの目的は何か)
  2. サーバーと通信するためにSSHを構成する必要がありますか?
  3. どこでも(どこでも)db資格情報を提供する必要がありますか?
  4. FTP資格情報をどこでも(どこでも)定義する必要がありますか?
  5. aliases.drushrc.php:デスクトップにのみ存在しますか、それともリモートFTPで同様のものを定義する必要がありますか?

私のセットアップにはステージングサイトと本番サイトが含まれ、前者も独自のドメインを持つリモートFTPサーバーに保存されています。 Drushで両方を制御できるようにしたいと思います。それは実現可能ですか?

誰かが私にいくつかの光を当てることができればそれは素晴らしいでしょう。

7
Artur

そこには多くの質問がありますが、これを簡単に行う方法の最良の概要を説明しようと思います。

まず、DrushはDrupal.orgのモジュールとしてリストされていますが、他のモジュールのように「有効」または「無効」にしないため、技術的にはモジュールではないことに注意してください。

  1. はい。Drushはリモートサイトにインストールする必要があります。その際、ローカルにインストールしたバージョンと同じバージョンをインストールしてください。異なるバージョンを使用している場合でも動作する可能性がありますが、トラブルシューティングが難しい奇妙なバグを引き起こす可能性があるため、常に同じバージョンを維持するようにしてください。

  2. Drushコマンドの一部にSSHを設定しておけば、間違いなく簡単です。あなたのウェブホストはあなたのローカルマシンにSSHキーを設定する手助けをすることができるはずです。

  3. はい、DBクレデンシャルを提供する必要があります。これは、drushフォルダーのdrush/examples/example.aliases.drushrc.phpの例に従って行うことができます。

  4. いいえ、そうは思いません。

  5. デスクトップにエイリアスを設定する必要はありませんnlessリモートサーバーにログインし、そこでエイリアスを使用します。

基本的に、SSHが機能していて、リモートサーバーとローカルマシンにDrushをインストールしている場合は、エイリアスを設定したら、drush @myremote statusのように入力すると機能するはずです。

6
Patrick Kenny

FTPとデータベースへのアクセスがあり、SSHアクセスがない場合に、リモートサイトでdrushを使用する方法についての記事を作成しました。それは少し設定ですが、ドラッシュなしでは生きられない、または多くのサイトで作業することができない場合、それは価値があります。

ローカルコンピューターがLinuxの場合、私の記事: http://eworldproblems.mbaynton.com/2014/07/drush-remote/

ローカルコンピューターがWindowsの場合、同じ原則: http://classically.me/blogs/drush-synchronization-ftp

2
mbaynton