LAMPスタックの制限

歴史的に、ローカル開発環境をセットアップするとき、WordPress開発者はMAMP、WAMP、XAMPPなどの従来のLAMPスタック(Linux + Apache + MySQL + PHP)に頼っていました。 一方、WordPress開発の進歩により、最新のWordPressインストールは、WordPressの高速化に向けて特別に調整された構成(キャッシュを重視)でNginxを実行する仮想プライベートサーバー(「VPS」)に導入されました。 ただし、MAMP、WAMP、またはXAMPPはApacheで実行されます。 WordPressの最適化はなく、キャッシュやその他の最適化手段として広く受け入れられている構成もありません。

開発者は、「開発環境が本番環境と同一であり、ステージングサーバーとテストサーバーがある場合はそれらと一致することを確認することが非常に重要である」ことに同意します。 [#]

環境をミラーリングしないことにより、Apacheベースのローカル開発環境で正常に機能しているように見えるものが本番サーバーで機能しない可能性が高くなります。 今日のLAMPスタックに対する一般的なフラストレーションは、現在、ライブサーバーまたは本番サーバーの環境と一致することはめったにないことです。 最近のWordPressホスティングの最先端のサーバー設定には、少なくともNginx、MySQL、PHP-FPM、Memcached(「d」に注意)の組み合わせが含まれています。

なぜVagrant?

環境間の微妙な違いでさえ、コードの変更、プラグイン、またはWebアプリが環境のテストまたはステージングで失敗する可能性が高くなります。その結果、他の方法でさらに開発する可能性がある場合に、トラブルシューティングに無駄な時間がかかります。 ここで、PECL memcache拡張機能またはVarnishを組み合わせて、WordPress構成をテストする可能性を検討してください。そうすれば、 WhyVagrantを喜んで発見できます。 Vagrantを使用すると、開発用に選択したオペレーティングシステムやプラットフォームに関係なく、(文字通り)どこでも同じ環境を簡単に再作成できます。 ローカルで、またはDigitalOceanなどのVPSを使用してマシンをプロビジョニングできます。

最愛のLAMPスタックと別れる準備ができていませんか?

Vagrantを使用すると、LAMPスタックで開発を続ける人でさえ、「Vagrant … WordPressのローカル環境を立ち上げようとしたときに私が過去に抱えていたすべての問題を解決しているようです。”[#] 最後に、Vagrantは移植性があり、チームの他のメンバーが使用するのと同じ構成の開発環境–すべてのチームメンバーが同じ環境でコードを実行し、同じ依存関係に対して、すべて同じ方法で構成されていることを確認します。Linux、Mac OS X、またはWindowsワークステーション。

Windowsユーザーの前提条件

Vagrantは、シェル、またはオペレーティングシステムのコマンドラインインターフェイス(「CLI」)、およびOpenSSHで構成されます。 残念ながら、SSHクライアントは通常、デフォルトではWindowsに配布されていません。 ただし、Windowsユーザーは、お気に入りのSSHクライアントを使用してVagrantに接続できます。 GitHubforWindowsで提供されているシェルの1つ。 Cygwinのターミナル。 とりわけ、GitBashまたはPuTTY。

はじめにローカルワークステーションでは、次のことを行う必要があります。

  1. の最新バージョンをダウンロードしてインストールします VirtualBox お使いのオペレーティングシステム用。
  2. 一致するVirtualBoxExtension Pack (すべてのプラットフォームで同じ)をダウンロードして、コンピューターにインストールします。
  3. VirtualBoxをインストールすると、ExtensionPackが認識されるファイルタイプになります。

  4. の最新バージョンをダウンロードしてインストールします Vagrant オペレーティングシステム用。
  5. プロジェクトの最初のステップは、Vagrantfileを構成することです。 Vagrantfile の目的は2つあります。(i。)プロジェクトのルートディレクトリをマークします(Vagrantの構成の多くはこのルートディレクトリに関連しています)。 (ii。)プロジェクトを実行するために必要なマシンとリソースの種類、およびインストールするソフトウェアとプロジェクトへのアクセス方法を説明します。

  6. Mac OS XおよびLinux-さまざまなユーザー: シェルを開きます。例: ターミナルで、Vagrantfileを保存するディレクトリを作成または移動します(Ubuntuでは、これは次のようになります)。
    sudo mkdir ~/[name of your choosing]cd [newly-created folder]

    Vagrantには、Vagrantで使用するために新しく作成されたディレクトリを初期化するための組み込みコマンド vagrantinitがあります。 注:既存のディレクトリで vagrant init を実行して、既存のプロジェクトのVagrantをセットアップすることもできます。

  7. 次に、初期化コマンドを実行します。
    vagrant init
  8. これにより、Vagrantfileが現在のディレクトリに配置されます。 Vagrantは、プロジェクトごとに1つの Vagrantfile で実行することを目的としており、 Vagrantfile バージョン管理にコミットされることになっています(例: ギット)。 このように、そのプロジェクトで作業するすべての人は、事前の準備なしでVagrantの恩恵を受けることができます。注意すべき1つの概念は、Vagrantがボックスを使用することです。 Vagrantは、 .box ファイルをテンプレートとして使用し、そこから新しいVPSを起動します。 VPSを最初から構築するのではなく(これは時間がかかり、面倒なプロセスになります)、Vagrantはベースイメージを使用してVPSのクローンをすばやく作成します。 これらのベースイメージはboxesと呼ばれ、Vagrant環境で使用する box を指定することは、常に新しいVagrantfileを作成した後の次のステップです。

  9. 次に、次のコマンドを実行します。
    vagrant box add precise64 http://files.vagrantup.com/precise64.boxvagrant up
  10. Microsoft Windowsユーザー:コマンドラインプログラムに関係なく、次の手順は同じです。 Windowsのコマンドプロンプトを続行する場合は、(i。)キーボードで Windows キー(ii。)を押してから R を押すと、関連するCLIを開くことができます。 ] 鍵; これにより、[実行]ダイアログボックスが開きます。 さて、(iii。)タイプ:

    cmd

    (iv。) Enter を押します。次に、次のコマンドを実行します(各行の後に Enter を押します)。

    cd C:\HashiCorp\Vagrant\binvagrant box add precise64 http://files.vagrantup.com/precise64.boxvagrant init precise64vagrant up

    注: Windowsワークステーションは、最初のVagrantコマンドを実行しようとするとエラーメッセージを出力することがあります。 コンピュータを再起動すると、通常、インストール後の問題のほとんどが解決されます。 後で、「ssh実行可能ファイルが見つかりません」というエラーメッセージが表示され、コンピューターを再起動してもパスが自動的に更新されなかった場合は、次のコマンドを実行してSSHパスを設定できます(ssh.exeを想定)。ファイルは、以下で参照されているフォルダにあります):

    set PATH=%PATH%;C:\Program Files (x86)\Git\bin

上記のコマンドを実行すると、Ubuntu 12.04LTS64ビットを実行しているVirtualBoxでVPSが完全に実行されます。 コマンドvagrantssh を使用して、SSH経由でこのマシンに接続できます。

PuTTYを使用していますか?

PuTTYは、すぐに使用できるOpenSSHと互換性がありません。 その結果、PuTTYはVagrantによって提供されたinsecure_private_keyを有効な秘密鍵として認識しません。 回避策は、PuTTYgenを使用して Load (つまり、 インポート)ホームディレクトリの.vagrant.dフォルダにあるinsecure_private_key、例:

  • Windows XP:C:\ Documents and Settings\{ユーザー名}\。vagrant.d\
  • Windows 7:C:\ Users\{ユーザー名}\。vagrant.d\

秘密鍵の保存ボタンをクリックして、鍵ファイルをPuTTYの形式( .ppk ファイル)に変換します。

次に、PuTTYを起動し、次の接続情報を入力します。

  <tr><td>Session</td>
  <td></td>
  <td><b>Host Name:</b></td>
  <td>127.0.0.1</td></tr>

 <tr><td></td>
      <td></td>
     <td><b>Port:</b></td>
      <td>2222</td></tr>

     <tr><td></td>
          <td></td>
         <td><b>Connection type:</b></td>
          <td>SSH</td></tr>

      <tr><td>Connection</td>
      <td>Data</td>
      <td><b>Auto-login username:</b></td>
      <td>vagrant</td></tr>

      <tr><td>Connection/SSH</td>
      <td>Auth</td>
     <td><b>Private key file for authentication:</b></td>
     <td>Click on the <b>Browse</b> button and find the <b>.ppk</b> private key you just converted</td></tr>

      <tr><td>Session</td>
            <td></td>
            <td><b>Saved Sessions</b></td>
            <td>vagrant (and then click the <b>Save</b> button for the <b>Load, save or delete a stored session</b> area)</td></tr></table>

最後に、PuTTYウィンドウの下部にある Open ボタンをクリックして、Ubuntu VPSに自動的にログインします。操作が終了したら、コマンドを使用してその痕跡をすべて削除できます。 vagrantdestroyボックスの使用およびはじめに|の後続のセクション VagrantDocs は非常に優れています。独自のカスタムVagrantボックスでビルドを続行する場合は、より完全なプロジェクトを設定するためのウォークスルーについて、そのガイドを参照してください。 ボックスをすべてセットアップしたら、WordPressやその他の必要なソフトウェアパッケージをデプロイできます。 ただし、「フライングソロ」について少し臆病な場合は…

恐れることはありませんが、オープンソースコミュニティの力はここにあります!

Vagrantを使用してローカルでWordPressを開発するためのジャンプスタートを取得したい場合は、GitHubでWordPress開発用のさまざまなVagrantVagrantsをチェックしてください(Vagrantの世界とそれがどのように役立つかを探る開発を効率的にし、本番システムと同期させます。チームのすべてのメンバーが、プロジェクトのオペレーティングシステムを気にせずに、プロジェクトの同じ環境で開発できるようにしながら、私たちが慣れ親しんだ一般的なMAMPまたはXAMPPセットアップを置き換えることによってローカルマシン)。 VaryingVagrant Vagrants を使用すると、単純な vagrant up コマンドを実行してインスタンスを起動できます。これにより、Nginx、PHP-FPM、およびMySQLが自動的にインストールされます。 ; 構成ファイルの移動とSQLダンプのインポートに進む前に、最初のコマンドの数分後に、ブラウザーで既存の開発サイトに移動するか、新しいWordPressインストールを開始できます。 [#]

そして、それ以上の苦労なしに:

  1. 少なくとも、上記のはじめにの手順1〜3を完了してください。
  2. OS XおよびLinux-バリアントユーザー: ターミナルを開き、作業を保存するディレクトリを作成するか、そこに移動します(Ubuntuでは、これは次のようになります)。
    sudo mkdir -p /srv/[name of your choosing]cd /srv/[newly-created folder]

    次のコマンドを実行して、GitHubから Varying VagrantVagrantsのクローンを作成します。

    sudo git clone https://github.com/10up/varying-vagrant-vagrants [local folder name of your choosing]

    Windowsユーザー: ダウンロードしてインストールした GitHub for Windows クリックすることができます ボタン(デフォルトのストレージディレクトリは、デフォルトのシェルに加えて、 tools => options で変更できます); または、GitHub for Windowsを使用したくない場合は、リポジトリのZIPファイルをローカルディレクトリにダウンロードして、Vagrantfileに使用することができます。そこから抽出します。

  3. 次に、ターミナルまたはWindowsのコマンドプロンプトで、新しいディレクトリに移動します。
    cd [new local folder w/repository from Step 2, above]

    次のコマンドを実行します。

    vagrant up
  4. これで、VPSが実行されます( vagrant up を初めて使用する場合でも、Vagrantには約1時間かかる場合があります。 あらかじめパッケージ化されたすべてのソフトウェアと関連する更新をダウンロードするため、30〜60分)。 Webブラウザで192.168.50.4に移動して、すぐにテストしてください。 WordPressの使用を開始するには、もう1つの手順が必要です。

  5. local.wordpress.dev192.168.50.4; [#] にマップされるように、ローカルマシンのhostsファイルを変更します
  6. マップしたら、ブラウザで local.wordpress.dev にアクセスすると、WordPressの初期インストールが表示されます。 それに従って、Vagrantで最初のWordPress開発環境を作成します。 開発中のテーマとプラグインは、相対的な www / wordpress-default / wp-content/ディレクトリに移動できます。

ここから、実験する必要があります。 オブジェクトキャッシングに精通している場合は、PECLmemcacheを操作するための一般的なプラグインをインストールできます。 Memcached自体はすでにインストールされており、準備ができたら実行されます。 Varying Vagrant Vagrants の内部ドキュメントをざっと見てみると、開発環境を拡張し続けるために独自のカスタマイズを利用できる場所がたくさんあります。 。 別のアプローチについては、多くの先行作業も行っています。チェックしてください:Vagrant入門| ScottWarrenまたはWordPress開発のためのVagrant入門| マイクグリーン

追加リソース

いつものように、このハウツーで概説されている手順についてサポートが必要な場合は、以下の質問を提起して、DigitalOceanコミュニティに支援を求めてください。

投稿者: Pablo Carranza

もっと知りたいですか? DigitalOceanコミュニティに参加してください!

100万人を超える開発者からなるDigitalOceanコミュニティに無料で参加してください! 質問と回答のセクションでヘルプを取得して知識を共有し、開発者として成長し、プロジェクトやビジネスを拡大するのに役立つチュートリアルとツールを見つけ、関心のあるトピックを購読してください。

サインアップ

著者について
DigitalOceanの開発者および著者。

まだ答えを探していますか?

これは役に立ちましたか?

ここのMacユーザーは、「boxadd…」コマンドが機能しませんでした(URLの404エラー)。 少し調べてみると、「box add ubuntu / trusty32」を使用する方が簡単であることがわかりました(私のドロップレットは14.04を使用しています。 trustyなので、trusty)を使用してからvagrantupを使用するのが適切だと感じました。

ここのMacユーザーは、「boxadd…」コマンドが機能しませんでした(URLの404エラー)。 少し調べてみると、「box add ubuntu / trusty32」を使用する方が簡単であることがわかりました(私のドロップレットは14.04を使用しています。 trustyなので、trusty)を使用してからvagrantupを使用するのが適切だと感じました。

放浪者ボックスを追加するMacOSコマンドが正しくありません。 代わりに:’vagrant box addprecision64 http://files.vagrantup.com/precise64.boxvagrant up’次のようになります:’vagrant box addprecision64 http://files.vagrantup.com/precise64.box” vagrant up ‘

カテゴリー サブカテゴリ 分野 価値