私のLaravelウェブサイトを使節に配備する方法


それで、あなたは完璧なウェブサイトを構築しました.
あなたは多くのブラウザとして、多くのデバイスとしてそれをテストしたことができます.
それは最終的に準備ができている-あなたのウェブサイトを展開し、世界を示す時間です.
幸いなことに、ララベルはあなたのためです-それは常に-使者と.
この記事では、ララヴァルの使節を使って自分のウェブサイトをどのように展開するかを示しています.

ラーラヴの使節は何ですか.
特使は、あなたのためのサーバーにログインし、任意のタスクを実行するあなたの新しい友人です.
単一のブレードファイルを作成することによって、あなたは1つのコマンドの実行であなたのサイトを展開するために使節を得ることができます.
歩き方をしましょう.

設定
開始する前に、Webサーバーを設定し、移動する準備が必要です.あなたの生産サイトをホストする準備ができているサーバーをセットアップすることはこの記事の範囲外です、私はDigital Ocean to get startedによってこの記事を推薦します.
SSH経由でサーバーにログインできるようにする必要があります.あなたのマシンからコマンドラインを介してログインすることができれば、特使はそのことを行うことができます.
設定したら、次のコマンドで使節をインストールします.
composer require laravel/envoy --dev

使節ファイルの作成
使節ファイルは、あなたが使節にあなたがそれがしたいことを伝えるところです.
アプリケーションのルートで、使節ファイルを作成します.ブレード.PHP
使節ファイルには2部が含まれます.まず、サーバの情報を設定します.
@servers(['prod' => ['user@ip_address']])
これは、あなたのSSHユーザとIPアドレスを入力されます.次に、任意の数のタスクを定義できます.この例では、deployと呼ばれるものを作成します.
@task('deploy', ['on' => 'prod'])

@endtask
我々の任務の中で、我々は使節が実行するコマンドをリストします.あなたが自分のサイトを展開したり更新したりするためにサーバにログインしたことを想像してください.
@task('deploy', ['on' => 'prod'])
    cd /path/to/codingwithstef.com
    git pull origin master
    composer install --optimize-autoloader --no-dev
    php artisan cache:clear
    php artisan view:cache
    php artisan optimize
@endtask

No Migrations?

My site isn't database driven, so there's no need for them to run in my case.


ここで使節を言います.
  • ウェブサイトルートディレクトリ
  • に移動してください
  • gitは最新のコード
  • を得るために引きます
    すべての依存関係がを更新される必要がある場合、
  • 作曲家はインストールします
  • は、我々のキャッシュ
  • をクリアします

    composer install --optimize-autoloader --no-dev?

    Adding the --optimize-autoloader and --no-dev flags optimises the autoloader for production and so is recommended for deployment.


    フルファイルです.
    @servers(['prod' => ['user@ip_address']])
    
    @task('deploy', ['on' => 'prod'])
        cd /path/to/codingwithstef.com
        git pull origin master
        composer install --optimize-autoloader --no-dev
        php artisan cache:clear
        php artisan view:cache
        php artisan optimize
    @endtask
    
    今、我々は使者を実行することができます.

    ララヴィル使節団の経営
    使節を実行するには、次のコマンドを使用できます.
    php vendor/bin/envoy run deploy
    
    コマンドラインで実行されているコマンドが表示され、すべてのエラーが正しくチェックされ、エラーが発生したことも確認できます.
    それは-どのように簡単ですか?

    さらに取る
    より複雑なセットアップUPSの場合は、複数のサーバー上でタスクを実行することができますも、そのように並列にそれらを実行します.
    @servers(['server-1' => 'user@ip_address', 'server-2' => 'user@ip_address'])
    
    @task('deploy', ['on' => ['server-1', 'server-2'], 'parallel' => true])
        cd /path/to/codingwithstef.com
        git pull origin master
        composer install --optimize-autoloader --no-dev
        php artisan cache:clear
        php artisan view:cache
        php artisan optimize
    @endtask
    
    引数を渡すこともできます.たとえば、どのブランチを展開するかを指定できます.
    @servers(['server-1' => 'user@ip_address', 'server-2' => 'user@ip_address'])
    
    @task('deploy', ['on' => ['server-1', 'server-2'], 'parallel' => true])
        cd /path/to/codingwithstef.com
        git pull origin {{ $branch }}
        composer install --optimize-autoloader --no-dev
        php artisan cache:clear
        php artisan view:cache
        php artisan optimize
    @endtask
    
    php vendor/bin/envoy run deploy --branch=master
    
    さらに読むために、Envoy documentation hereをチェックしてください.
    読書のおかげで、うまくいけば、あなたはこの記事が役に立つとわかりました.私のサイト上の場所でこれを持つことはとても簡単に更新することができます!
    いつものように、フィードバックをしたり、コードについてチャットしたい場合は、以下のコメントをドロップします.