服務器完全配置 (Part 3)

目標:帶你安裝 Node 以及處理 Node 服務的端口反向代理。

前言

Node 越來越火了,所以給服務器配置 Node 也很有必要了,一般的 Node 服務都是啓動在本地服務的某一端口,本例將以一個簡單的Express 服務帶你部署持久啓動Node 服務,並將其反向代理到相應域名上。

安裝Node

我們直接採用 npm 的一個神奇的包——n,來安裝 node

  1. github 克隆 n 的倉庫並安裝,注意最好在 /usr/local 目錄下操作。

cd /usr/local
sudo git clone https://github.com/tj/n.git n
cd n
sudo make install

上面執行最後一步可能會提示沒有 make,那就裝一個唄。

sudo apt-get install make
sudo make install


n 指令安裝最新版 nodenpm

  1. sudo n latest

好了,這樣 Node 即安裝完成了,我們可以試着輸出 Node 版本號。

node -v

注意,用這種方法安裝的話,每次安裝全局包時需要加上 sudo。我們來安裝 nrm 來試試吧,nrmnpm 的源管理工具,我們用 nrm 切換到 npm 淘寶源。

sudo npm install nrm -g --registry  https://registry.npm.taobao.org
nrm use taobao

沒有問題的話應該是能夠輸出切換成功的信息。

部署我們的 Express 服務(一個 Node 後端框架)

我們就從零開始部署吧,通過應用生成器工具 express 可以快速創建一個應用的骨架。

sudo npm install express-generator -g

進入你想把 express 放置的目錄,我就放在了 /usr/share/nginx/html,這個放置地方對express 啓動的服務沒有影響,因爲 node啓動在本地服務的某一端口。

express 生成器生成一個 express 項目,並啓動它。

sudo express api
cd api && sudo npm install
DEBUG=api:* npm start

服務已經啓動在 3000 端口,我們訪問試試,在瀏覽器地址輸入123.206.55.207:3000。如果沒問題你應該能看見如下頁面。

反向代理+持久部署

直接通過上面的方式啓動並不能持久化開啓服務,所以我們用 pm2 來託管我們的服務。首先通過 npm 安裝pm2

如果你沒停止剛剛開啓的 express服務,按 Ctrl+C停止。

sudo npm install pm2 -g

通過 pm2 啓動服務。

pm2 start bin/www

好了,我們已經把服務持久部署了,接下來我們把服務映射到域名上去。

我以 api.outxu.cn 作爲該服務的請求地址,先去域名管理中添加解析記錄 api

然後進入 nginx 配置目錄,添加一個虛擬主機。

cd /etc/nginx/conf.d
sudo nano api.conf

寫入以下內容:

server {
        listen 80;
        server_name  api.youradmin.com;
        location / {
                proxy_pass http://0.0.0.0:3000/;
        }
}


重啓 nginx 服務:

sudo service nginx restart

我們訪問試試,在瀏覽器地址輸入api.youradmmin。如果沒問題你應該能看見與上面一樣的界面。

至此,Node 安裝以及在服務器上持久啓動 Node 服務講解結束

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章