3

私はgit(およびlinux)でやや新しいです。私は小さなチームの一員であり、プロジェクトを debian サーバーにデプロイする任務を負っています。

プロジェクトはまだかなり初期段階にあるため、過度に複雑な展開ソリューションは必要ありません。

ともかく。私たちのプロジェクトは github に保存されており、そこからプル/プッシュします。現時点では、何かをデプロイしたいときは、git pull を使用して Windows マシンにプルします。次に、このスクリプトを使用します。

cd src/www
scp -r app public <user>@<server-ip>:/home/www

パスワードとファイルのアップロードを入力します。次に、サーバーにログインしてサービス (playframework) を再起動します。play restart --%prod

サーバーがgithubから変更を取得し、サーバーを自動的に再起動する簡単なソリューションを推奨できる人はいますか? 私はここでstackoverflowを見回しましたが、LinuxとGitの経験が浅いため、あまり意味のないソリューションしか見つかりませんでした。

4

2 に答える 2

4

1 つのオプションは、Capistranoのような展開ライブラリ/フレームワークを使用することです。デプロイ (「レシピ」と呼ばれる) を構成すると、Capistrano を使用して、コマンド ラインから 1 つまたは複数のターゲットに簡単にデプロイできます。また、優れたリリース構造を提供し、任意の時点でターゲットにデプロイされるアプリケーションのコピーをより適切に管理できるようにします。

于 2012-10-04T00:44:06.267 に答える
0

開始するには、「継続的デリバリー」を検索してください。これは GitHub 固有の問題ではありません。

可能なセットアップの 1 つは、継続的インテグレーション サーバーJenkinsを使用することです。GitHub リポジトリの変更を定期的にチェックするように構成できます。変更が見つかった場合は、ビルドを作成したり、アプリケーションまたは Web サーバーにアーティファクトをデプロイしたりできます。

もちろん、継続的インテグレーション インフラストラクチャの初期セットアップとメンテナンスには時間がかかり、努力する価値があるかどうかを判断する必要があります。ただし、そのようなものを配置するのは今日の最先端のようです。リポジトリにプッシュして直接デプロイする方法に関する GitHub 開発者によるこの投稿にも興味があるかもしれません。

于 2012-10-04T19:14:56.043 に答える