ドメイン名の購入からpm2を使ったnode.jsプロジェクトのデプロイまでの全工程を詳しく解説

亚连
リリース: 2018-05-31 17:20:27
オリジナル
1508 人が閲覧しました

この記事では主にドメイン名の購入からpm2を使ったnode.jsプロジェクトのデプロイまでの全プロセスを詳しく紹介しますので、参考にしてください。

フロントエンドとして、書いたプロジェクトをサーバーにデプロイする方法に戸惑いましたが、それでも非常に興味があったので、試しにやってみることにしました。

1. ドメイン名とサーバーを購入します

プロジェクトをデプロイするには、ドメイン名を購入する必要があります。Tencent Cloud で利用できる無料のサーバーがあることがわかりました (7 日間のみ無料)。 , そこでTencent Cloudに行きました。ドメイン名を購入し、Tencent Cloudから無料のサーバーを取得しました。もちろん、この期間中は本名で認証されます。

ドメイン名を購入します

サーバーを取得します

Tencent CloudでCentOSサーバーを選択し、ドメイン名解決を実行し、サーバーをセットアップします(アカウントパスワードなど)

ドメイン名解決

2. Node.js環境をデプロイ

(1) サーバーにログインして更新します(初めてサーバーを使用する場合は最初に更新してください)

yum update -y
ログイン後にコピー

(2) インストールNode と pm2

wget コマンドを使用して、Node.js インストール パッケージをダウンロードします。インストール パッケージはコンパイルされたファイルなので、解凍後、node と npm はすでに bin フォルダーに存在するため、再コンパイルする必要はありません。

rreee

ファイルを解凍します。

wget https://nodejs.org/dist/v8.9.3/node-v8.9.3-linux-x64.tar.xz
ログイン後にコピー

ソフトリンクを作成して、node および npm コマンドをグローバルに有効にします。ソフト リンクを作成すると、任意のディレクトリで node および npm コマンドを直接使用できます:

tar xvf node-v8.9.3-linux-x64.tar.xz
ログイン後にコピー

node と npm のバージョンを表示します。

ln -s /root/node-v8.9.3-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v8.9.3-linux-x64/bin/npm /usr/local/bin/npm
ログイン後にコピー

この時点で、Node.js 環境がインストールされました。ソフトウェアはデフォルトで /root/node-v8.9.3-linux-x64/ ディレクトリにインストールされます。ソフトウェアを他のディレクトリ (/opt/node/ など) にインストールする必要がある場合は、次の手順を実行してください:

node -v
npm -v
ログイン後にコピー

pm2 をインストールする

mkdir -p /opt/node/
mv /root/node-v8.9.3-linux-x64/* /opt/node/
rm -f /usr/local/bin/node
rm -f /usr/local/bin/npm
ln -s /opt/node/bin/node /usr/local/bin/node
ln -s /opt/node/bin/npm /usr/local/bin/npm
ログイン後にコピー

pm2 コマンドをグローバルに有効にするためのソフト リンクを作成する

npm install pm2@latest -g
ログイン後にコピー

3. git を使用してプロジェクトがサーバーにデプロイされます

最初にサーバーのルートディレクトリに入り、ルートディレクトリフォルダーの内容を表示します。次に、var ディレクトリに入り、var ディレクトリの下に新しい www フォルダーを作成し、内容を表示しますvar フォルダーのファイルを作成し、www フォルダーに移動してコマンド

ln -s /root/node-v8.9.3-linux-x64/bin/pm2 /usr/local/bin/pm2
ログイン後にコピー

last picture

を実行してから、ウェアハウスにプロジェクトを git clone します

まず git をインストールし、次のコマンド

cd /
ls
cd var
ls
mkdir www
cd www
ログイン後にコピー

を使用して入力しますあなたのプロジェクト

上の図で、Express プロジェクトではないファイルがあることがわかります。pm2 の設定ファイルは http://pm2.keymetrics.io/ です。 docs/usage/cluster-mode/

以下は私のプロジェクトの構成です (初心者でも専門家でも、質問があればアドバイスを提供します)

yum install git
y
ログイン後にコピー

4 番目に、プロジェクトを開始します

{
 "apps": [
  {
   "name": "app1",
   "script": "bin/www",
   "log_date_format": "YYYY-MM-DD HH:mm:SS",
   "log_file": "logs/app1.log",
   "error_file": "logs/app1-err.log",
   "out_file": "logs/app1-out.log",
   "pid_file": "pids/app1.pid",
   "instances": 1,
   "min_uptime": "200s",
   "max_restarts": 10,
   "max_memory_restart": "1M",
   "cron_restart": "1 0 * * *",
   "watch": false,
   "merge_logs": true,
   "exec_interpreter": "node",
   "exec_mode": "cluster_mode",
   "autorestart": true,
   "vizion": false
  }
 ]
}
ログイン後にコピー

プロジェクトを閉じます

pm2 start processes.json
ログイン後にコピー

次に、対応するプロジェクトを開始します

先查找ID
pm2 status
然后,停止相应项目的id
pm2 stop id
ログイン後にコピー

ブート時に pm2 が自動的に開始されるように設定します

先查找ID
pm2 status
然后,开启相应项目的id
pm2 start id
ログイン後にコピー

プロジェクトの開始に pm2 を使用する理由は、サーバー接続を終了した後もノード プロジェクトを実行できるためです。

プロジェクトはデプロイされましたが、プロジェクト内のポートはポート 80 のみです。バックエンドマスターは、nginx をプロキシサーバーとして使用できると教えてくれました。そして取り付け方法をお伝えしました。

5. nginx をインストールし、nginx を構成します

nginx をインストールします

pm2 startup
pm2 save
ログイン後にコピー

nginx を構成します

構成されたフォルダー ディレクトリを入力し、nginx.conf ファイルを編集するか、conf.d フォルダーの下に新しいサフィックス名を作成します。 conf ファイル

yum install nginx
ログイン後にコピー

これが写真です

ここでは vim エディターが使用されています。使用方法はインターネットで検索できます

使用方法をいくつか挙げるだけで、キーボードを押すだけです

cd /
cd etc/nginx
vim nginx.conf
ログイン後にコピー

以下は私の nginx です。設定 (初心者、質問がある場合は、専門家がアドバイスを提供します)

nginx を起動します

i  编辑
Esc 退出编辑
:q  退出vim编辑器
:wq 保存并退出vim编辑器
ログイン後にコピー

nginx が実行されるようにします。

nginx の設定を変更するたびに、次のコマンドを使用して nginx を再起動する必要があります

service nginx start
ログイン後にコピー

上記は私が皆さんのためにまとめたものです。将来。

関連記事:

Vue2.0とwebuploaderを組み合わせてスライスでファイルアップロード機能を実装する方法(詳細なチュートリアル)

vue+vuex+axios テクノロジーを使用して、ログインおよび登録ページのパーミッションインターセプトを実装します (詳細なチュートリアル)

React でこれをイベントバインドする 4 つの方法を詳しく説明します

以上がドメイン名の購入からpm2を使ったnode.jsプロジェクトのデプロイまでの全工程を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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