騰訊雲從零部署nodejs站點


版權聲明:本文由袁飛翔原創文章,轉載請注明出處: 
文章原文鏈接:https://www.qcloud.com/community/article/176

來源:騰雲閣 https://www.qcloud.com/community

 

最近入手了一台騰訊雲機子,用於團隊社區站點的建設,站點架構:

  • 數據庫服務:mongodb
  • 后台:nodejs + express
  • 接入:nginx  

整個購買到部署的要點步驟:

  • 服務器購買
  • nginx 編譯安裝配置
  • node 安裝
  • mongodb 安裝
  • server部署

服務器購買

從騰訊雲的首頁找到購買入口。(弱弱的說一句,雲太多了,企鵝雲發展好快~~~ )

按需選擇自己的配置,包年可以優惠只需付10個月。最終我們的配置

選購硬盤時需要注意可以選擇雲硬盤,它支持很多擴容,性能按官方的描述沒有多大差別,詳細硬盤對比

購買成功幾分鍾之后我們便能拿到機器的IP

登錄機器

ssh ubuntu@119.29.237.x 

第一次使用用戶名和密碼登錄,之后可以配置ssh的免密碼登錄

nginx 安裝

使用apt-get安裝nginx

sudo apt-get install nginx 

這是最簡單的方法,但是這不是最新的nginx,如果需要支持http2,至少需要nginx 1.9.5,因此我們選擇本地編譯最新的nginx安裝

wget https://nginx.org/download/nginx-1.10.1.tar.gz tar -xvf nginx-1.10.1.tar.gz cd nginx-1.10.1 # 安裝編譯依賴 sudo apt-get install make libssl-dev zlib zlib-devel zlib1g-dev openssl openssl-devel pcre-devel \ libpcre3-dev libpcre++-dev # 編譯安裝 ./configure --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module \ --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module \ --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module \ --with-http_stub_status_module --with-http_auth_request_module --with-mail --with-mail_ssl_module \ --with-file-aio --with-ipv6 --with-cc-opt='-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' \ --with-http_v2_module make sudo make install # 之后nginx將安裝至 /usr/local/nginx目錄 # 創建一個nginx命令軟連接 sudo ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx # 之后就可以運行`nginx`命令了 nginx -V # 配置nginx的自動啟動 # 下載init.d/nginx文件 sudo wget https://raw.githubusercontent.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginx sudo chmod +x /etc/init.d/nginx # 添加開機自動啟動 sudo update-rc.d -f nginx defaults # 啟動 sudo /etc/init.d/nginx start # sudo /etc/init.d/nginx stop # 停止 # sudo /etc/init.d/nginx restart # 重啟 

mongodb 安裝

mongodb可以直接使用apt-get安裝

sudo apt-get install mongodb # 添加開機自動啟動 sudo update-rc.d -f mongodb defaults # 啟動 sudo /etc/init.d/mongodb start 

node 安裝

# 從node官網下載已編譯好了的node wget https://nodejs.org/dist/v4.6.0/node-v4.6.0-linux-x64.tar.xz tar -xvf node-v4.6.0-linux-x64.tar.xz cd node-v4.6.0-linux-x64.tar.xz # 拷貝安裝 sudo cp -r bin include lib share /usr/local/ # node 命令測試 node -v 

server部署

准備工作:

# 創建目錄 sudo mkdir -p /data/www/ivweb.io # 創建用戶 sudo groupadd www # 創建用戶 # nginx也使用此用戶運行 sudo useradd www -g www -d /data/www # /data目錄權限 sudo chown www:www /data # 安裝forever sudo npm install -g forever 

本地使用rsync命令同步文件至服務器(Linux/Mac,windows的同學需要先安裝這個命令)

rsync -rtzvlC --exclude node_modules --exclude ".git" \ ./ "www@ivweb.io:/data/www/ivweb.io" 

啟動服務

# 使用www登陸服務器 cd /data/www/ivweb.io # 安裝依賴 npm install # forever 啟動app forever start app.js # 可以使用`forever list`查看運行情況及對應的log輸出文件,使用`tail -f`動態查看log forever list # tail -f XXX.log 

之后配置nginx映射,重啟nginx機大功告成:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM