摘要:比如暴露端口,選擇,授權(quán)對(duì)象填,其他默認(rèn)就可以了。開(kāi)啟性能平臺(tái),點(diǎn)擊創(chuàng)建新應(yīng)用按照操作提示來(lái)就行,成功開(kāi)啟后在項(xiàng)目配置具體配置看下文就可以監(jiān)控?cái)?shù)據(jù)了。
建議不熟悉 linux 命令的小伙伴同時(shí)打開(kāi)我的另一篇博客linux 常用操作服務(wù)器購(gòu)買&配置
打開(kāi)阿里云,選擇購(gòu)買云服務(wù)器 ECS,這里可以選擇一鍵購(gòu)買進(jìn)行快速配置,操作系統(tǒng)選擇 CentOS 7.2 64 位,其他默認(rèn)或根據(jù)實(shí)際需求來(lái),若選擇自定義購(gòu)買請(qǐng)自行搜索;
購(gòu)買成功設(shè)置賬號(hào)密碼后,就可以通過(guò) ftp 工具(我用的是 FileZilla)或者 git 連接我們的服務(wù)器了,這個(gè)時(shí)候我們也可以打開(kāi)阿里云的控制臺(tái)/云服務(wù)器 ECS 查看購(gòu)買的服務(wù)器;
打開(kāi)阿里云的控制臺(tái)/云服務(wù)器 ECS/網(wǎng)絡(luò)和安全/安全組,在安全組列表點(diǎn)擊配置規(guī)則,點(diǎn)擊快速創(chuàng)建規(guī)則,就可以暴露端口了。比如暴露 80 端口,選擇 HTTP(80),授權(quán)對(duì)象填0.0.0.0/0,其他默認(rèn)就可以了。暴露其他端口你就在自定義端口選擇,比如暴露 7001 端口,你就在自定義端口選擇 TCP,輸入7001/7001即可。
開(kāi)啟node 性能平臺(tái),點(diǎn)擊創(chuàng)建新應(yīng)用按照操作提示來(lái)就行,成功開(kāi)啟后在項(xiàng)目配置(具體配置看下文))就可以監(jiān)控?cái)?shù)據(jù)了。
連接服務(wù)器
git 連接
# ssh remote_username@remote_ip 然后輸入密碼即可 如果ssh不存在,執(zhí)行以下命令即可 # yum install openssh-client 下載客戶端ssh
ftp 工具連接(這里以 FileZilla 為例),下載 filezilla 后,點(diǎn)擊新建站點(diǎn),輸入主機(jī) ip,選擇 sftp 協(xié)議,選擇登錄類型為正常,輸入賬號(hào)密碼即可
部署 node 環(huán)境
部署 node 環(huán)境
# ssh remote_username@remote_ip 連接服務(wù)器 # wget https://nodejs.org/dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz 下載node壓縮文件 # tar xvf node-v6.9.5-linux-x64.tar.xz 解壓 # ln -s /root/node-v6.9.5-linux-x64/bin/node /usr/local/bin/node 創(chuàng)建軟連接 # ln -s /root/node-v6.9.5-linux-x64/bin/npm /usr/local/bin/npm 創(chuàng)建軟連接 # node -v 查看node版本 # npm -v 查看npm版本
其他
# yum install vim 下載vimnginx 安裝&配置
nginx 安裝
# yum install epel-release 下載epel-release # yun install nginx 下載nginx # cd /etc/nginx # vim nginx.conf 用vim打開(kāi)nginx.conf
修改 nginx.conf
修改 user 為 root
修改 server 如下,這里 admin 是指向管理后臺(tái)項(xiàng)目,app 是指向移動(dòng)端項(xiàng)目,wx 是指向代理另一個(gè) node 微信公眾號(hào)項(xiàng)目(運(yùn)行在 7002 端口,但微信公眾號(hào)配置 http 只允許 80 端口,所以設(shè)置代理,我們的 elm 接口運(yùn)行在 7001 不用代理)
server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /root/www/; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location /admin/ { # 為空即可,前端打包文件放在/root/www/admin里面就可訪問(wèn)到,注意默認(rèn)是index.html } location /app/ { } location /wx/ { proxy_pass http://127.0.0.1:7002/; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
啟動(dòng) nginx
nginx -t 測(cè)試nginx語(yǔ)法是否有誤 nginx 啟動(dòng)nginx nginx -s reload 重啟nginx,修改nginx.conf后記得重啟
其他命令
ps -ef | grep nginx 顯示nginx進(jìn)程 nginx -s stop 停止nginx nginx -v 查看nginx版本部署 mongodb
安裝 mongodb
# ssh remote_username@remote_ip 連接服務(wù)器 # curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 下載 # tar -zxvf mongodb-linux-x86_64-3.0.6.tgz 解壓 # mkdir data 創(chuàng)建數(shù)據(jù)庫(kù)文件夾 # touch mongodb.log 創(chuàng)建日志文件 # cd /usr/local/mongodb/bin # ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork 注意fork是后臺(tái)啟動(dòng),避免又要再開(kāi)窗口重新連接服務(wù)器再能進(jìn)行其他操作 # ./mongo 連接mongodb
配置隨 linux 啟動(dòng)
在/etc/rc.local 添加如下即可:
# rm /usr/local/mongodb/data/mongod.lock 停止可能在運(yùn)行的mongo # /.../bin/mongod -dbpath /usr/local/mongodb/data -logpath /usr/local/mongodb/mongodb.log -logappend -fork -port 27017
設(shè)置權(quán)限
# cd /usr/local/mongodb/bin # ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork # ./mongo > use admin > db.createUser( > { > user: "root", > pwd: "123456", > roles: [ { role: "root", db: "admin" } ] > } > ) > db.shutdownServer(); # ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork --auth # db.auth("root","123456")
項(xiàng)目中連接 mongodb(這里以 koa 框架 egg 項(xiàng)目為例,其他 node 請(qǐng)自行查找)
# cnpm i egg-mongoose -S // config/plugin.js exports.mongoose = { enable: true, package: "egg-mongoose", } // config/config.default.js config.mongoose = { url: "mongodb://127.0.0.1/eggadmin", options: { // 如果設(shè)置了密碼 // auth: { "authSource": "admin" }, // user: "root", // pass: "123456", } }部署 node 項(xiàng)目
部署環(huán)境 阿里云 CentOS 7.2 64 位
本地項(xiàng)目根目錄(刪除 node_modules,建議依賴在服務(wù)器下載)
# tar -zcvf ../file_name.tgz . 打包 # scp ../file_name.tgz remote_username@remote_ip:/root/www/server 上傳到服務(wù)器
服務(wù)器
# ssh remote_username@remote_ip 連接服務(wù)器 # cd /root/www # mkdir server 這里創(chuàng)建server文件夾放node項(xiàng)目代碼 # cd server # tar -zxvf file_name.tgz . 解壓 # cnpm install --production 安裝生產(chǎn)環(huán)境依賴
# cnpm i -g pm2 下載pm2
# pm2 start bin/www 守護(hù)進(jìn)程啟動(dòng)
# pm2 restart app_name|app_id 重啟
# pm2 stop app_name|app_id 停止
# pm2 list 查看進(jìn)程狀態(tài)
# pm2 stop all 停止所有應(yīng)用
# pm2 start ./bin/www --watch 監(jiān)聽(tīng)更改自動(dòng)重啟
egg項(xiàng)目
# npm start 運(yùn)行
# npm stop 停止
3. 阿里 node 性能平臺(tái)監(jiān)控 1. koa 項(xiàng)目(express 項(xiàng)目類似)
# wget -O- https://raw.githubusercontent... | bash 安裝版本管理工具 tnvm
# source ~/.bashrc
# tnvm ls-remote alinode 查看需要的版本
# tnvm install alinode-v3.11.4 安裝需要的版本
# tnvm use alinode-v3.11. 使用需要的版本
新建 config.json 文件如下,從[node 性能平臺(tái)](https://node.console.aliyun.com/#!/owned)獲取對(duì)應(yīng)的接入?yún)?shù)
{
"appid": "", "secret": " " }
# cnpm install @alicloud/agenthub -g 安裝 agenthub
# agenthub start config.json 啟動(dòng)agenthub
# agenthub list 查看 agenthub 列表
# ENABLE_NODE_LOG=YES pm2 start bin/www 使用pm2管理的應(yīng)用
2. egg 項(xiàng)目
# cnpm i nodeinstall -g
# nodeinstall --install-alinode ^3
# cnpm i egg-alinode --save
# npm start
// config/plugin.js
exports.alinode = {
enable: true, package: "egg-alinode",
};
// config/config.default.js
config.alinode = {
appid: "", secret: " ",
};
## 部署前端項(xiàng)目(這里以 vue 為例) 在項(xiàng)目根目錄`npm run build`,然后把 dist 文件夾里的內(nèi)容傳到服務(wù)器,這里我們把兩個(gè)項(xiàng)目分部傳到/root/www/app 和/root/www/admin,記得提前創(chuàng)建 app 和 admin 文件夾 ## 項(xiàng)目實(shí)戰(zhàn) [全棧項(xiàng)目-基于 koa 框架 egg 的服務(wù)端接口](https://github.com/majun00/egg-api) 求一個(gè) star~ > 本人水平有限,歡迎大家交流指正。本文為作者原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/40218.html
摘要:另外,中間件還提供了諸如日志記錄之類功能,便于查詢?nèi)蝿?wù)狀態(tài)以及信息。 DevOps大熱,這里我們借著上線一個(gè)node中間件,簡(jiǎn)單介紹下前端容器化相關(guān)的內(nèi)容 原文:http://blog.thonatos.com/dockerizing-your-frontend-project/ (很多東西還來(lái)不及寫(xiě),有時(shí)間再補(bǔ)充吧T.T,比如:如何快速在服務(wù)器部署vpn神馬の一定很有用...) In...
摘要:阿里云服務(wù)器部署項(xiàng)目和項(xiàng)目遇到的問(wèn)題第三章申請(qǐng)阿里云服務(wù)器阿里云服務(wù)器地址第一次啥都不懂選的數(shù)據(jù)中心版位中文版不含。步驟輸入申請(qǐng)阿里云服務(wù)器時(shí)候創(chuàng)建的登錄名和登錄密碼,點(diǎn)擊鏈接。 阿里云ECS服務(wù)器部署node項(xiàng)目和vue項(xiàng)目遇到的問(wèn)題(第三章) 申請(qǐng)阿里云ECS服務(wù)器阿里云服務(wù)器地址 showImg(https://segmentfault.com/img/bVbgeNh?w=9...
摘要:基于的私有云混合云構(gòu)建方案蘇依蜀黍是一個(gè)開(kāi)源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個(gè)輕量級(jí)的可移植的自給自足的容器。開(kāi)發(fā)者在筆記本上編譯測(cè)試通過(guò)的容器可以批量地在生產(chǎn)環(huán)境中部署,包括虛擬機(jī)集群和其他的基礎(chǔ)應(yīng)用平臺(tái)。 container-as-a-service-0x01 -- 基于Docker的私有云&混合云構(gòu)建方案 By 蘇依蜀黍 . 2016.06.07 what Docker是一...
摘要:前言本文講解的是做為前端開(kāi)發(fā)人員,對(duì)服務(wù)器的了解還是小白的我,是如何一步步將項(xiàng)目部署在阿里云的服務(wù)器上,并進(jìn)行性能優(yōu)化,達(dá)到頁(yè)面秒內(nèi)看到,秒內(nèi)看到首屏內(nèi)容的。搭建的項(xiàng)目是采用了主流的前后端分離思想的,這里只講服務(wù)器環(huán)境搭建與性能優(yōu)化。 showImg(https://segmentfault.com/img/remote/1460000017143281); 前言 本文講解的是:做為前...
摘要:本文詳細(xì)介紹如何部署項(xiàng)目到阿里云上,以及本人在部署過(guò)程中所遇到的問(wèn)題坑點(diǎn)和解決辦法,可以說(shuō)是全網(wǎng)最全最詳細(xì)的教程了。同時(shí)講解了如何申請(qǐng)阿里云免費(fèi)證書(shū),以及一臺(tái)服務(wù)器配置多網(wǎng)站的配置方法等。優(yōu)惠券阿里云產(chǎn)品通用代金券最高元。 本文詳細(xì)介紹如何部署NodeJS項(xiàng)目到阿里云ECS上,以及本人在部署過(guò)程中所遇到的問(wèn)題、坑點(diǎn)和解決辦法,可以說(shuō)是全網(wǎng)最全最詳細(xì)的教程了。同時(shí)講解了如何申請(qǐng)阿里云免費(fèi)...
閱讀 1199·2021-11-11 16:55
閱讀 3085·2021-08-16 11:00
閱讀 2932·2019-08-30 15:56
閱讀 3464·2019-08-30 11:24
閱讀 3441·2019-08-30 11:05
閱讀 3559·2019-08-29 15:15
閱讀 2648·2019-08-26 13:57
閱讀 2616·2019-08-23 18:17