leanote安裝配置

千與千尋之前1發表於2019-03-21
安裝配置Leanote

安裝配置Leanote

環境:Linux :CentOS 6.9 64位;阿里雲伺服器 ;高效雲盤 40G;資料盤 60G


(一)安裝golang

 

mkdir /usr/local/leanote
cd /usr/local/leanote/
3. wget https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz​


4. tar -xzvf go<按tab鍵補全>
5. 在/usr/local/leanote/下新建一個防止go的包和編譯後的檔案的目錄goPackage

mkdir /usr/local/leanote/goPackage​


7. 使用vim編輯新增環境變數 vim /etc/profile
8. 在unset語句前的空行前新增如下幾句

export GOROOT=/usr/local/leanote/go
export GOPATH=/usr/local/leanote/gopackage
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin​


12. 使用source /etc/profile 命令來使環境變數生效
13. 接下來需要安裝revel及leanote的原始碼,有兩種方式:1)是在本地下載完成後,然後使用ftp服務上傳到雲伺服器2)是使用git來clone在倉庫裡的原始碼。這裡採用第二種方式


(二)Linux(CentOS)下安裝git


1. 先安裝依賴

 yum install curl-devel expat-devel gettext-devel \
 openssl-devel zlib-devel​


2. 下載最新的git的tar.gz 原始碼:

wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz​


3. 解壓:

tar -xzvf git<使用tab鍵補全> -C /usr/local/​


4.

cd git<...>​


5.

make prefix=/usr/local all​


6. 上一步發現沒有安裝gcc,下面安裝gcc : yum install gcc
7. 安裝完gcc 繼續第5部,出現錯誤:Can’t locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 1.
8. 解決上面的錯誤:

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker​


9. 繼續第5部 成功
10.

make prefix=/usr/local install ​


11. 成功安裝git
參考資料:安裝git:【https://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git
參考資料:解決git安裝錯誤:【http://blog.51cto.com/212395/1582370


(三)獲取Revel和 Leanote 的原始碼


1. go get github.com/revel/cmd/revel(失敗)
2. go get github.com/leanote/leanote/app(失敗)
3. wget https://github.com/leanote/leanote-all/archive/master.zip 下載到/usr/local/leanote/
4. 解壓:unzip leanote<…>
5. 將裡面的src資料夾貼上到goPackage目錄下
6. 使用如下命令生成revel二進位制命令:go install github.com/revel/cmd/revel


(四)安裝64位 linux Mongodb 3.6.3


1.下載:

 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-amazon-3.6.3.tgz​


2. 解壓

tar -zxvf mongodb-linux-x86_64-amazon-3.6.3.tgz​


3. 配置環境變數, 編輯/etc/profile檔案 加入

export PATH=$PATH:/usr/local/leanote/mongodb-linux-x86_64-amazon-3.6.3/bin​​


4. 在終端執行以下命令使環境變數生效:

source /etc/profile​​

5. 先在 /usr/local/leanote下新建一個目錄 data 存放Mongodb資料:

mkdir /usr/local/leanote/data​

6. 用以下命令啟動 mongodb :

mongod --dbpath /usr/local/leanote/data​

7. 開啟終端, 輸入以下命令匯入資料

mongorestore -h localhost -d leanote --dir /usr/local/leanote/gopackage/src/github.com/leanote/leanote/mongodb_backup/leanote_install_data​


9. Leanote的配置儲存在檔案 /usr/local/leanote/goPackage/src/github.com/leanote/leanote/conf/app.conf
10. 修改app.secret=ChroblertJerrybird


(五)為mongodb資料庫新增使用者

 

mongo v3資料庫
use leanote
db.createUser({
user:'root',
pwd:'xxxxxxxx',
roles:[{role:'dbOwner',db:'leanote'}]
});​


8. 資料庫使用者新增完畢,下面驗證是否新增成功:db.auth(‘root’,’xxxxxxxx’);若返回為1,則成功
9. 啟動資料庫:screen mongod –dbpath /usr/local/data –auth


(六)修改leanote的配置檔案

 

db.host=127.0.0.1
db.port=27017
db.dbname=leanote
db.username=root
db.password=xxxxxxxx​


7. 配置檔案修改完畢,重新啟動leanote。先將之前開啟的關閉,然後重新啟動 revel run github.com/leanote/leanote


(七)設定mongo資料庫在後臺執行


1. 在後臺執行,啟動時只需新增 –fork 函式即可。可以在日誌路徑後面新增 –logappend,防止日誌被刪除。

mongod --fork --dbpath=/usr/local/leanote/data --logpath=/usr/local/leanote/mongoDBLog/mongodb.log --logappend --auth​

2. 或者

screen mongod --dbpath /usr/local/leanote/data --auth​


(八)mongo資料庫設定開機自動啟動


1. 將(七).1中的程式碼新增至 /etc/rc.local檔案中即可


(九)為leanote配置https


(1)生成ssl指令碼

#!/bin/sh
# create self-signed server certificate:
read -p "Enter your domain [www.example.com]: " DOMAIN
echo "Create server key..."
openssl genrsa -des3 -out $DOMAIN.key 1024
echo "Create server certificate signing request..."
SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"
openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr
echo "Remove password..."
mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key
echo "Sign SSL certificate..."
openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt​


(2)設定nginx /usr/local/nginx/conf/nginx.conf

# 本配置只有http部分, 不全
http {
 include /etc/nginx/mime.types;
 default_type application/octet-stream;
 
 upstream leanote_app {
 server localhost:9000;
 }
# http
 server
 {
 listen 80;
 server_name notebook.isdevil.com;
 
 # 強制https
 # 如果不需要, 請註釋這一行rewrite
 #rewrite ^/(.*) https://jp_linode2.com/$1 permanent;
 
 location / {
 proxy_pass http://notebook.isdevil.com;
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 }
 }
 
 # https
 server
 {
 listen 443 ssl;
 server_name notebook.isdevil.com;
 ssl_certificate ../cert/leanote/notebook.isdevil.com.crt; # 修改路徑, 到a.com.crt, 下同
 ssl_certificate_key ../cert/leanote/notebook.isdevil.com.key
 location / {
 proxy_pass http://notebook.isdevil.com;
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 }
 }
}​

(十)leanote配置開機啟動


1. 在/etc/rc.local中加入一行

nohup revel run github.com/leanote/leanote 2>&1 &​


參考資料:【https://blog.csdn.net/yori_chen/article/details/79800853
參考資料:官方:
https://github.com/leanote/leanote/wiki/Leanote-%E6%BA%90%E7%A0%81%E7%89%88%E8%AF%A6%E7%BB%86%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B—-Mac-and-Linux
參考資料:【http://www.bioinit.com/post/ecs-leanote

轉載請註明:大魔王ISDevil's Blog » leanote安裝配置

喜歡 (0)

相關文章