用 MongoDB + Express + NodeJS 搭建博客

最近剛新搭了一個博客,用的是 MongoDB + Express + NodeJS ,爲啥標題這麼長不直接用 MEAN.JS 代替,由於爲了熟悉整個流程並無使用 MEAN.JS,並且我也沒有帶上任何的前端框架,由於前端用什麼框架並不重要,用 Angular,React 什麼的均可以。爲啥如今纔開始搭?主要是之前太懶了不愛寫博客,如今幡然醒悟了,應該還能夠亡羊補牢一下。因此其實網上教程已經很是多了,可是這邊仍是要記錄一下。大部分安裝地址都有在最後提供。html

廢話很少說,先上步驟:前端

  1. NodeJS + NPM + mongoDBnode

  2. 建立項目文件夾mongodb

  3. 安裝 Expressdocker

  4. Index.js  + nodemon數據庫

  5. 配合 mongoDBexpress

  6. 補充說明npm

1.NodeJS + NPM + mongoDB後端

    首先要在電腦裏安裝 NodeJS 和 NPM,去 NodeJS 的官網下載,可以順帶着也把 NPM 下載下來了,由於我很早就下過了,因此這裏不提供具體操做。前端框架

    我還須要一個 mongoDB 的鏡像。我是用 Docker 下載到 Linux 的虛擬機裏面(正確姿式是去租個服務器,在服務器裏操做),這裏不提供安裝 Linux 以及 Docker 的具體步驟。

下載 mongoDB 的步驟以下:

1. 首先經過 ssh 鏈接本機和虛擬機。

接着本機直接運行:

docker run -d -p 27017:27017 -p 28017:28017 tutum/mongodb  就能自動 pull mongoDB 的鏡像到 Docker 容器中,

2. 執行 docker ps 查看容器,可以看到有一個 CONTAINER_ID 。

3. 執行 docker logs <CONTAINER_ID>  能夠看到下面的內容:

 
========================================================================    
You can now connect to this MongoDB server using: 
mongo admin -u admin -p 5elsT6KtjrqV--host  --port     
Please remember to change the above password as soon as possible!
========================================================================

其中 5elsT6KtjrqV 是待會兒要用到的密碼。

4.  與此同時,我還須要一個能夠直接管理 mongoDB 的工具 MongoHub。

配置 MongoHub :下面是我已經配置好的內容,其中 Address 是虛擬機的 IP, Password 就是上面提到的 5elsT6KtjrqV ,這個密碼是隨機生成的。

設置成功之後就可以連上數據庫了。

 

2.建立項目文件夾

準備工做的時間可能會比較長,下面幾步將會比較簡單

建立文件夾 $ mkdir myblog

進到文件夾裏 $ cd myblog

NPM 初始化 $ npm init ,初始化的時候能夠設置入口文件 entry point , 我設置爲 index.js

 

3.安裝 Express

接下來須要安裝 Express

$ npm install express --save

Express 項目中一般使用 body-parser 進行 post 參數的解析

因此還須要下載 body-parser :

$ npm install body-parser --save

 

4.Index.js + nodemon

安裝完成之後咱們能夠直接寫一些後端的代碼。

首先我新建一個 index.js 的文件(由於剛纔 npm 初始化的時候指定了 entry point 是 index.js),這裏的 index.js 是寫後端代碼用的,參考 Express 官網,代碼以下:

而後打開 terminal ,執行 node index.js ,此時就能經過 http://localhost:3000/ 看到 This is my blog! 字樣啦。

 

nodemon 能夠選擇性安裝。它是什麼呢?因爲每次修改代碼之後都須要重啓一下 node,而 nodemon 可以在代碼修改了之後自動重啓,省去了一些麻煩。安裝過程也很簡單:

npm install nodemon -g

這邊全局安裝,而後將 node index.js 替換成 nodemon index.js 去執行就能夠了

 

5.配合 mongoDB

mongoDB 是 NoSQL 型數據庫,所以存取方式和之前的 SQL 語句不同,具體辦法能夠參考 mongoDB 官網。

下載  $ npm install mongo --save-dev 

這裏並非在下載 mongoDB,而是須要這個依賴去支持咱們進行一些數據庫的操做。

簡單寫一下,爲了方便依舊寫在 index.js 裏,

6.補充說明

這裏並無列出任何前端代碼,也沒有寫任何前端頁面,其實只要是把這些所有搭建好,先後端走通,剩下的只需按照平時工做中負責前端的部分去作就好。徹底能夠新建一個 index.html 就開始寫寫寫了。

(下面的內容不重要,能夠不看。)

我雖然沒有寫前端頁面,可是須要有前端的 post 請求來進行測試,我用到了 postman,不知道何時安裝到電腦上的 = =。上手比較簡單,針對剛纔的代碼,能夠直接像下面這樣配置,而後 send,若是發送成功的話,就能看到返回 Success 字樣,具體就不細說了。本身折騰去吧 ~

 

mongoDB 鏡像地址:https://hub.docker.com/r/tutum/mongodb/ 

mongoHub 下載地址:http://www.macupdate.com/app/mac/33918/mongohub

Express 安裝地址:http://expressjs.com/en/starter/installing.html

相關文章
相關標籤/搜索