Node線上部署(Ubuntu16.04)

錦衣無涯發表於2019-02-25

安裝Node


安裝nvm

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
複製程式碼

安裝node

nvm install v10.15.1
複製程式碼

指定系統使用新的Node

nvm alias default v10.15.1
複製程式碼

指定淘寶源

npm --registry=https://registry.npm.taobao.org install -g npm 
複製程式碼

檢視系統當前的max_user_watches值

cat /proc/sys/fs/inotify/max_user_watches 
複製程式碼

增加系統當前的max_user_watches值

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
複製程式碼

安裝常用node軟體

npm i pm2 webpack gulp grunt-cli -g
複製程式碼

測試服務

//app.js
const http = require('http')

http.createServer(function (req,res) {
        res.writeHead(200,{'Content-Type':'text/plain'})
        res.end('hello world')
}).listen(8080)
複製程式碼

啟動服務

node app.js
複製程式碼

pm2使用


服務持久化

pm2 start app.js
複製程式碼

pm2基礎使用

啟用一個應用:  pm2 start app.js
停止:pm2 stop app_name|app_id
刪除:pm2 delete app_name|app_id
重啟:pm2 restart app_name|app_id
停止所有:pm2 stop all
檢視所有的程式:pm2 list
檢視所有的程式狀態:pm2 status
檢視某一個程式的資訊:pm2 describe app_name|app_id
檢視當前使用pm2管理的應用: pm2 show app_name
列印日誌:pm2 logs
複製程式碼

刪除apache節省空間

updata-rc.d -f apache2 remove
apt-get remove apache2
複製程式碼

update-rc.d 是在 Debian 或 Ubuntu 內用來管理 /etc/init.d blog.wu-boy.com/2017/04/upd…

nginx反向代理


安裝ngnix

apt-get update
apt-get nginx
nginx -v
複製程式碼

新增配置檔案

cd  /etc/nginx/conf.d/
vi ljx-com-8080.conf
複製程式碼

配置ljx-com-8080.conf檔案

upstream ljx {
        server 127.0.0.1:8080;
}

server {
        listen 80;
        server_name 192.168.1.109; //注意這裡填寫的是你自己的伺服器IP
        location / {
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;
                proxy_set_header X-Nginx-Proxy true;

                proxy_pass http://ljx;
                proxy_redirect off;
        }
}
複製程式碼

參考資料:segmentfault.com/a/119000000…

測試配置檔案是否正確

nginx -t
複製程式碼

重啟nginx

nginx -s reload
複製程式碼

直接訪問192.168.1.109:80/192.168.1.109,此時訪問80埠為被自動代理到8080埠

相關文章