一臺服務器部署多個應用。可部署前端工程、node服務、數據庫等。javascript
1、服務器
選擇合適的服務器,購買便可。
服務器商
一、阿里雲
二、騰訊雲
三、百度雲
html
2、服務器管理面板-寶塔
寶塔面板是一款服務器管理軟件,支持windows和linux系統,能夠經過Web端輕鬆管理服務器,提高運維效率。例如:建立管理網站、FTP、數據庫,擁有可視化文件管理器,可視化軟件管理器,可視化CPU、內存、流量監控圖表,計劃任務等功能。前端
使用手冊
java
3、阿里雲CenOS,安裝寶塔
一、配置端口
首先配置寶塔須要的端口
node
二、mac 終端鏈接linux
阿里雲鏈接方式導航
ssh root@YourAliyunServerIp
而後輸入你上面設置的密碼便可。
第一次使用帳號密碼登陸,會提示
直接輸入yes便可。nginx
三、安裝寶塔git
四、安裝成功
Bt-Panel: http://47.110.32.46:8888/1c894253
username:jingwhale
password: adminzylgithub
4、阿里雲CenOS環境配置
一、基礎環境安裝
Linux面板下,主要支持LNMP和LAMP、Tomcat、node.js
LNMP和LAMP環境的安裝
安裝完成在瀏覽上打開面板的地址,登入面板,面板會自動推薦你安裝環境套件,這裏有兩種選擇,第一種是LNMP套件,第二種是LAMP套件(如圖):
LNMP和LAMP環境主要的區別在於web服務器上面,一個使用是Apache服務器、一個使用Nginx服務器。
若是你不瞭解兩種的區別和差別請使用推薦安裝(LNMP套件),安裝方式這裏根據自身實際的狀況選擇,若是不瞭解,也使用默認的安裝方式(極速安裝)。若是不須要這些套件也能夠在面板左側功能欄選擇《軟件管理》,在當前列表自行選擇安裝程序。web
二、NodeJS環境安裝
1)nvm
2)pm2
寶塔也有PM2進程管理工具,安裝PM2管理工具,在面板左側工具欄,軟件中心,在選擇PM2安裝便可。
4)使用cnpm
https://npm.taobao.org/
npm install -g cnpm --registry=https://registry.npm.taobao.org
可防止頁面中文亂碼。
5、前端靜態頁面部署
1)使用寶塔網站管理,添加網站管理
2)將代碼clone到wwwroot文件下的項目文件夾下便可。
3)在網站設置中,設置域名管理
4)配置ip訪問
前提是ip與服務器已經備案,不備案阿里雲服務不可訪問。
ip設置增長解析,添加A記錄類型,以下圖:
此外,騰訊雲開發者平臺的pages服務部署靜態網站,只須要將git倉庫開啓pages服務便可,可綁定域名,https。
6、Node服務器部署-eggjs
1)使用寶塔網站管理,添加網站管理
2)部署Node服務
eggjs部署
JavaScript 語言自己不須要編譯的,構建過程主要是下載依賴。但若是使用 TypeScript 或者 Babel 支持 ES6 以上的特性,那就必需要這一步了。
通常安裝依賴會指定 NODE_ENV=production 或 npm install --production 只安裝 dependencies 的依賴。由於 devDependencies 中的模塊過大並且在生產環境不會使用,安裝後也可能遇到未知問題。
$ cd baseDir $ npm install --production $ tar -zcvf ../release.tgz .
但,若是dependencies 的依賴會由於不一樣的環境,依賴不一樣的話,建議在服務器安裝依賴。例如,puppeteer會依據不一樣的環境加載不一樣chrome模擬器,須要服務器安裝依賴。
3)服務訪問方式
*ip地址方式
服務器公網地址:7001,須要在eggjs中配置hostname爲0.0.0.0:
config/config.default.js
config.cluster = { listen: { port: 7001, //可本身配置 hostname: '0.0.0.0' } };
*域名方式
-eggjs配置
默認127.0.0.1:7001
config/config.default.js
config.cluster = { listen: { port: 7001, //可本身配置 hostname: '' } };
-寶塔配置
設置nginx反向代理
目標訪問www.xxx.cn讓nginx反向代理到,www.xxx.cn:7001地址
打開寶塔的nginx配置,修改server{}內的
listen 80; server_name www.xxx.cn;
還須要在server內加上一個配置
location / { proxy_pass http://127.0.0.1:3000; }
配置好後,訪問 www.xxx.cn 的請求就會自動代理到 http://127.0.0.1:7001 ,這樣就能夠能使用nodejs開闢的接口了。
-寶塔面板Nginx SSL 配置
-放行eggjs端口(若已在放行內,沒必要再進行放行操做)
具體放行端口方法
其餘
lunix命令
查看服務器是幾核
dmesg | grep CPU | grep ID