php/html/css/etc コードを複数のサーバーにデプロイする必要があり、複数のサーバーに簡単かつ安全にデプロイできるソフトウェアのオプションを検討しています。
また、SVN に関連付けることができれば役立ちます。
助言がありますか?
php/html/css/etc コードを複数のサーバーにデプロイする必要があり、複数のサーバーに簡単かつ安全にデプロイできるソフトウェアのオプションを検討しています。
また、SVN に関連付けることができれば役立ちます。
助言がありますか?
ssh でパスワードなしの公開鍵認証を設定すると、ファイルを任意のサーバーに非常に迅速に scp できるようになります (またはシェル スクリプトによって自動化されます)。
ここに簡単なチュートリアルがあります: http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/internet/node31.html
Redhat または Debian で実行している場合は、コードを RPM または Deb にパッケージ化することを検討してください。次に、yum または dpkg リポジトリを構築し、そこにパッケージを配置します。その後、システムのパッケージ管理を使用してアップグレード/ロールバックなどを行うことができます。パペットを使用してプロセスを自動化することもできます。
サブバージョンに結び付けたい場合は、新しいバージョンごとにブランチを作成できます。ディレクトリに新しいブランチが表示されたら、コミット スクリプトを使用して RPM を構築します。
カピストラーノに次ぐ。それは信じられないほど強力で柔軟です。現在のプロジェクトでは、Capistrano を使用して、さまざまなサーバーや複数のサーバーにデプロイしています。cap コマンドに 2 つの引数を渡します: 1) 実行するマシン固有の構成オプションのセットの名前、および 2) 実行するアクションの名前
最終的には次のようになります。
cap -f deploy.rb live deploy
また
cap -f deploy.rb dev deploy
もちろん、デフォルトのユース ケース (一度に多数のマシンにデプロイする) は、Capistrano を使用した簡単なものであり、デプロイ先のマシンに Capistrano をインストールする必要はありません。全体として、おいしい技術です。
また、rsyncを使用する場合は、sshを使用するようにrsyncを設定できるため、変更されたファイルのみを転送し、時間と帯域幅を節約できることにも言及し忘れました。
以前、同様のタスクにAutomated Build Studioを使用したことがあります。これにより、できることの柔軟性が大幅に向上します。
また、無料で ssh 経由のリモート インストールが可能なkwateeSDCMを使用することもできます。また、中央の場所からサーバー固有の構成を管理し、シームレスにアップグレードすることもできます。
同意します-svnツリーをセットアップし、ssh経由でrsyncを使用してツリーをリモートの場所にコピーします。rsync は高速かつ効率的で、完全なファイルではなく変更のみをコピーします。
svn ツリーをあるディレクトリにエクスポートし、そこからリモート ホストのディレクトリ ツリーに rsync したいとします。
カピストラーノは、一度セットアップすると非常に使いやすいことがわかりました。構成ファイルは、より複雑な環境では最初は少し混乱する可能性がありますが、すぐに役に立ちます。本番環境で 14 台のサーバーにデプロイします。また、ステージング サーバーへの展開に複数の環境を使用しています。1 つの癖として、Ruby には並列展開を中断するバグがありますが、svn エクスポートではシリアルはそれほど悪くありません。
Capistrano のセットアップは複雑すぎます。KwateeSDCM は、シンプルな Web インターフェイスを備え、スクリプトを作成する必要がなく、非常に簡単に使用できることがわかりました。Windows および Linux サーバーでの開発および QA 構成のために、展開構成をすぐに完了しました。
Subversion を使用して Web サイトを展開する方法に関する投稿をマークしました: http://blog.lavablast.com/post/2008/02/I2c-for-one2c-welcome-our-new-revision-control-overlords!.aspx