Github プロジェクトをサーバーにデプロイする手順の詳細な説明

PHPz
リリース: 2023-03-27 11:23:32
オリジナル
5541 人が閲覧しました

Github は現在、世界最大のオープン ソース コミュニティです。多くのプログラマは、その便利なバージョン管理機能やコラボレーション機能を利用するために、Github で独自のコードをホストします。ただし、Github 上のプロジェクトは単なるコードであり、それをサーバーにデプロイして実行するには追加の作業が必要です。この記事では具体的な手順を紹介します。

1. サーバーにログインします。

SSH を使用してリモート接続し、コマンド

ssh root@your_server_ip
ログイン後にコピー

2 を入力します。必要なソフトウェアをインストールします

Git と Node.js をサーバーにインストールします。 Ubuntu システムを例として、次のコマンドを実行します:

sudo apt-get update
sudo apt-get install git
sudo apt-get install nodejs
ログイン後にコピー

3. サーバー上に Git リポジトリを作成します

サーバー上に空のディレクトリを作成し、 Git リポジトリを初期化し、次のコマンドを実行します:

mkdir myapp
cd myapp
git init --bare
ログイン後にコピー

4. Git フックのセットアップ

Git リポジトリに post-receive フックを追加して、自動的にアプリケーションをデプロイし、次のコマンドを実行します。

cd hooks
touch post-receive
sudo chmod +x post-receive
nano post-receive
ログイン後にコピー

開いているテキスト エディタに次の内容を入力します。

#!/bin/bash
git --work-tree=/var/www/html/myapp --git-dir=/root/myapp.git checkout -f
cd /var/www/html/myapp
sudo npm install
ログイン後にコピー

スクリプトは、コードを /var/www/html/myapp に自動的にチェックアウトします。そして、npm install コマンドを実行してプロジェクトの依存関係をインストールします。

5. Github で Webhook を構成する

Github にログインし、プロジェクトの [設定] ページで [Webhook] オプションをクリックし、[Webhook の追加] ボタンをクリックします。ペイロード URL にサーバーの IP アドレスと post-receive フックのパスを入力します (例: http://your_server_ip:8000/hooks/post-receive)。 [コンテンツ タイプ] で application/json を選択し、[Webhook の追加] をクリックします。

6. ローカル コードにサーバー アドレスを追加します

ローカル コードの package.json ファイルを変更し、次の内容を追加します:

{
  "scripts": {
    "start": "node app.js",
    "deploy": "git push deploy master"
  },
  "config": {
    "deploy": {
      "production": {
        "user": "root",
        "host": "your_server_ip",
        "ref": "origin/master",
        "repo": "ssh://git@your_server_ip:/root/myapp.git",
        "path": "/var/www/html/myapp",
        "ssh_options": ["StrictHostKeyChecking=no", "PasswordAuthentication=no"],
        "post-deploy": "npm install && pm2 restart app"
      }
    }
  }
}
ログイン後にコピー

その中で、デプロイ スクリプトはコードをサーバー上の myapp.git ウェアハウスにプッシュします。サーバーの IP アドレス、プロジェクトのパス、プロジェクトのパスなど、一部の構成項目は config/deploy/production で定義されます。フックなど

7. コードのデプロイメントを実行します

ローカル コード ディレクトリで次のコマンドを実行します:

npm run deploy production
ログイン後にコピー

このコマンドはコードをサーバーにプッシュし、トリガー post-receive フックは、コードを /var/www/html/myapp ディレクトリに自動的にデプロイします。

8. アプリケーションの起動

/var/www/html/myapp ディレクトリに移動し、次のコマンドを実行してアプリケーションを起動します:

npm start
ログイン後にコピー

これでアプリケーションがサーバー上で実行されるはずです。アプリケーションの起動に失敗した場合は、依存関係が正しくインストールされていること、およびアプリケーションが正しく構成されていることを確認する必要があります。

概要:

上記は、Github 上のプロジェクトをサーバーにデプロイする手順です。このプロセスは面倒に思えるかもしれませんが、このアプローチを使用すると、効率的なコードの展開とコラボレーションが可能になります。同時に、Git、Node.js、その他のテクノロジーをより深く理解できるよう、素晴らしい学習の機会も提供します。

以上がGithub プロジェクトをサーバーにデプロイする手順の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート