嗯……我只是個前端而已javascript
在第一部分說完了express篇。
後面繼續項目的部署,這裏主要說說篇pm2和nginxhtml
在提到pm2先說說 forever這個東西,使用過node.js可能都是有知道forever這個東西的。
顧名思義,就是讓腳本永遠的運行,除非你手動寫命令去關閉。
關於forever的使用方法有兩種,一種是命令行的形式,還有一種就是 forever-monitor前端
在這裏特意提forever,是由於pm2和forever的功能很類似,不用pm2,用forever也是可以一樣部署的。java
forever啓動node
1
|
forever start app.js
|
除了經過js去運行 ,還能夠配置json文件,例如linux
1
2
3
4
5
6
7
8
9
10
11
12
13
|
├── forever
│ └── development.json
└── index.js
// forever/development.json
{
// Comments are supported
"uid"
:
"app"
,
"append"
:
true
,
"watch"
:
true
,
"script"
:
"index.js"
,
"sourceDir"
:
"/home/myuser/app"
}
|
而後運行nginx
1
|
forever start ./forever/development.json
|
pm2詳細用法能夠參考 官方文檔,寫的至關詳細,很不錯。c++
附上 pm2中文版文檔git
一張圖pm2和forevergithub
數據只是擔保活躍的程度
不太重點仍是介紹pm2
PM2是一個帶有負載均衡功能的Node應用的進程管理器。它能夠保持Node應用一直後臺運行,在不中止的前提下更新,優化了系統任務管理。
pm2的安裝
1
|
npm install pm2 -g
|
啓動項目
1
|
pm2 start app.js
|
經常使用命令一覽
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# General
$ npm install pm2 -g
# 安裝 PM2
$ pm2 start app.js
#啓動, Daemonize and auto-restart application (Node)
$ pm2 start app.py
# 啓動, Daemonize and auto-restart application (Python)
$ pm2 start npm -- start
# 啓動, Daemonize and auto-restart Node application
# Cluster Mode (Node.js only)
$ pm2 start app.js -i 4
# 啓動四個應用程序實例
# 會給每一個網絡裝載網絡均衡器
$ pm2 reload all
# 當即重啓全部工做進程
$ pm2 scale [app-name] 10
# 使用10個工做進程
# Process Monitoring
$ pm2 list
# 列出全部PM2啓動的進程
$ pm2 monit
# 列出每一個程序的詳細狀況和CPU使用狀況
$ pm2 show [app-name]
# 列出程序的全部信息
# Log management
$ pm2 logs
# 列出應用的日誌
$ pm2 logs [app-name]
# 列出某個app的日誌
$ pm2 logs --json
# 使用json格式列出日誌
$ pm2 flush
$ pm2 reloadLogs
# Process State Management
$ pm2 start app.js --name=
"api"
# 啓動應用,而且命名‘api’
$ pm2 start app.js -- -a 34
# Start app and pass option "-a 34" as argument
$ pm2 start app.js --watch
# 當文件改變的時候從新啓動應用
$ pm2 start script.sh
# 啓動bash腳本
$ pm2 start app.json
# 啓動全部app.json中聲明的程序
$ pm2 reset [app-name]
# Reset all counters
$ pm2 stop all
# 中止全部應用
$ pm2 stop 0
# 中止id爲0的進程
$ pm2 restart all
# 重啓全部應用
$ pm2 gracefulReload all
# Graceful reload all apps in cluster mode
$ pm2
delete
all
# 關閉並刪除全部應用
$ pm2
delete
0
# 刪除id爲0的程序
|
nginx作爲HTTP服務器,有如下幾項基本特性:
官網下載地址 nginx下載
也可參考菜鳥教程,nginx安裝配置
nginx的安裝步驟以下
1、安裝編譯工具及庫文件
1
|
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
|
2、首先要安裝 PCRE
一、下載 PCRE 安裝包,下載地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
1
|
[root@bogon src]
# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
|
二、解壓安裝包:
1
|
[root@bogon src]
# tar zxvf pcre-8.35.tar.gz
|
三、進入安裝包目錄
1
|
[root@bogon src]
# cd pcre-8.35
|
四、編譯安裝
1
2
|
[root@bogon pcre-8.35]
# ./configure
[root@bogon pcre-8.35]
# make && make install
|
五、查看pcre版本
1
|
[root@bogon pcre-8.35]
# pcre-config --version
|
3、安裝 Nginx
一、下載 Nginx,下載地址:http://nginx.org/download/nginx-1.6.2.tar.gz
關於版本去官網可自行選擇新的下載地址,在linux的安裝方式仍是和下面同樣
1
|
[root@bogon src]
# wget http://nginx.org/download/nginx-1.6.2.tar.gz
|
二、解壓安裝包
1
|
[root@bogon src]
# tar zxvf nginx-1.6.2.tar.gz
|
三、進入安裝包目錄
1
|
[root@bogon src]
# cd nginx-1.6.2
|
四、編譯安裝
1
2
3
|
[root@bogon nginx-1.6.2]
# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
[root@bogon nginx-1.6.2]
# make
[root@bogon nginx-1.6.2]
# make install
|
五、查看nginx版本
1
|
[root@bogon nginx-1.6.2]
# /usr/local/webserver/nginx/sbin/nginx -v
|
以上大部分是pm2和nginx的簡單介紹以及安裝
未完待續^^……還有nginx的配置,以及在pm2如何配置nginx,綁定域名,經過外網瀏覽本身的網站……