前言:
最近一段時間在學習nodejs編程,我們知道現在做軟件項目主流是前后端分離操作。作為一個前端小白,為了實現一個人完成整個項目的心願,用nodejs編寫了后端代碼,准備部署到阿里雲服務器上,作為接口供前端使用。
操作目的:
(1)熟悉阿里雲服務器上安裝的linux系統操作
(2)配置nodejs環境,並編寫項目
(3)配置mongoDB數據庫
(4)熟練操作shell命令,操作、部署項目
用到的環境、軟件:
阿里雲服務器、Xshell、Xftp、CentOS7.3、mongoDB、postman、Robo 3T
具體操作:
-
購買阿里雲服務器、安裝centOS 7.3;
-
安裝Xshell、Xftp,連接遠程服務器:
用Xshell遠程連接雲服務器:
連接成功,進入shell界面:
- 安裝Node.js
解壓,測試安裝是否成功:
此時,node.js已經安裝成功,但仍不能全局使用node 和 npm,用以下命令修改以達到目的。
補充知識:
ln是linux中一個非常重要命令,它的功能是為某一個文件在另外一個位置建立一個同不的鏈接,這個命令最常用的參數是-s,(symbolic代號的意思)
具體用法是:ln -s 源文件 目標文件
由分析可知,node解壓在了/root下,那么我們要用命令:
ln -s /root/node-v8.9.3-linux-x64/bin/node /usr/sbin/node
執行文件命令,查看:
同理更改npm,測試查看:
- 安裝mongoDB
解壓:
創建數據和日志存放目錄
更改配置,啟動mongodb命令:
將下列代碼填寫到 mongo.conf:
dbpath=/mongodb/data
logpath=/mongodb/logs/mongo.log
logappend=true
journal=true
quiet=true
port=27017
fork=true #后台運行
bind_ip=0.0.0.0 #允許任何IP進行連接auth=false #是否授權連接
將安裝包移動到usr/local
修改環境變量:
嘗試了無權限修改 /~/.bashrc 所以改為軟連接
運行 mongo –config /user/local/mongodb/logs/mongo.conf
再運行mongo,得:
這時應該打開第二個窗口 進入/usr/local/mongodb/bin,運行./mongod 即可進入數據庫:
數據庫搭建完成
第二次進入 直接進 usr/local/mongoDB/bin 運行 ./mongod開啟數據庫
5. 用xftp傳輸項目到雲服務器上
用xftp將項目拖至 /home文件夾下
查看是否成功:
- 運行代碼
先重新軟連接
運行代碼報錯:缺少包
安裝一系列包后:
服務器和數據庫連接成功:
但是在postman測試仍不能連接成功
經查證,要在阿里雲開放端口:
項目部署成功!
- 最終成果:
接口1:發送郵箱驗證碼接口:
接口2:注冊接口!
用Robo 3T查看剛才注冊的用戶:
接口3:登錄接口
假設輸錯密碼:
至此完畢!
8. 總結
學習了一個學期的linux,覺得這門課對我們來說意義重大。項目工程部署必會用到,這次大作業算是在項目中實踐了一回。在安裝配置的過程中踩了很多坑,各種權限各種包問題層出不窮,特別是裝mongodb的時候!經過查閱資料,搜索問題,最終終於解決了,讓項目成功在雲服務器上跑了起來!激動!!!
后續:我弄了一個apidoc文檔 可是linux上總是軟連接不成功 只能每次運行用/usr/local/node/bin/apidoc -i ./ -o ./dir來運行apidoc
具體代碼github:我的github地址