您的位置:首页 > 运维架构 > Linux

CentOS 搭建 Leanote 云笔记

2018-04-03 11:29 393 查看

CentOS 搭建 Leanote 云笔记

Leanote, 不只是笔记!

Leanote——免费、开源、无广告、支持免打扰“写作模式”、支持 markdown 、支持代码高亮、多人协作,笔记历史记录,笔记内导航,直接发布为博客等等,横跨 Windows、MacOS、Android、iOS、Linux 多平台

官网:https://leanote.com

Wiki:https://github.com/leanote/leanote/wiki

特性

高效笔记:Leanote 有易操作的界面, 包含一款富文本编辑器和Markdown编辑器,让您的笔记记录更轻松和高效。对高阶用户,我们还提供Vim 和Emacs 编辑模式,助推你的写作速度更上层楼。

知识管理: Leanote 灵活而强大的“笔记本-笔记-标签”系统,让它成为你个人知识管理的利器。

分享: 你可以通过Leanote同好友分享知识、想法和经历, 邀请好友加入你的笔记簿,通过云端交流信息。

协作: Leanote协助你与同事之间相互协作,激荡新思路,随时随地头脑风暴。

博客: Leanote也可以作为你的个人博客, 把你的知识传播的更远!

其它特性

支持Markdown编辑

写作模式

Vim 及 Emacs 编辑模式

支持PDF导出

支持批量操作

博客自定义主题, 实现高度定制化

安装步骤(源码版)

本文 leanote 安装目录为 /usr/local/leanote

1、安装Golang

golang.org 官网下载最新版的golang, Leanote至少需要golang 1.7。如果被墙, 可以在 http://golangtc.com/download 下载

以下为 1.10.1 linux 版本的快速下载链接:

https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz

mkdir /usr/local/leanote
cd /usr/local/leanote
wget https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz[/code] 
解压 go1.10.1.linux-amd64.tar.gz

tar -zxvf go1.10.1.linux-amd64.tar.gz


在 /usr/local/leanote 下新建一个目录 gopackage, 这里面会放go的包和编译后的文件:

mkdir /usr/local/leanote/gopackage


配置环境变量, 编辑/etc/profile文件:

vi /etc/profile


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


保存修改后,在终端运行以下命令使环境变量生效:

source /etc/profile


查看go是否安装成功:

go version


若出现类似以下信息证明安装成功

go version go1.6 linux/amd64


2、获取Revel和 Leanote 的源码

获取Revel

请下载 leante-all-master.zip。解压后,将src文件夹复制到 /usr/local/leanote/gopackage/

wget https://github.com/leanote/leanote-all/archive/master.zip unzip master.zip
cp -r leanote-all-master/src/ /usr/local/leanote/gopackage/


使用如下命令生成revel二进制命令

go install github.com/revel/cmd/revel


3、安装Mongodb

3.1 安装Mongodb

到 Mongodb 官网 下载相应系统的最新版安装包

64位 linux Mongodb 3.6.3 下载链接

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

下载 Mongodb 并 解压

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


配置环境变量, 编辑/etc/profile文件:

vi /etc/profile


加入

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


保存修改后,在终端运行以下命令使环境变量生效:

source /etc/profile


3.2 测试Mongodb

先在 /usr/local/leanote下新建一个目录 data 存放Mongodb数据:

mkdir /usr/local/leanote/data


用以下命令启动 mongodb :

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


这时 mongod 已经启动,重新打开一个终端, 键入
mongo
进入交互程序:

> mongo
> show dbs; # 查看数据库
admin    0.000GB
local    0.000GB


Mongodb 安装到此为止, 下面为 Mongodb 导入 Leanote 初始数据。

4、 导入初始数据

leanote 初始数据在 /usr/local/leanote/gopackage/src/github.com/leanote/leanote/mongodb_backup/leanote_install_data 中

打开终端, 输入以下命令导入数据

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


现在在mongodb中已经新建了leanote数据库, 可用命令查看下Leanote有多少张”表”:

> mongo
> show dbs; # 查看数据库
admin    0.000GB
leanote  0.001GB
local    0.000GB
> use leanote # 切换到leanote
switched to db leanote
> show collections # 查看表
files
has_share_notes
note_content_histories
note_contents
....


初始数据的 users 表中已有2个用户:

user1 username: admin, password: abc123 (管理员, 只有该用户才有权管理后台, 请及时修改密码)
user2 username: demo@leanote.com, password: demo@leanote.com (仅供体验使用)


5、配置Leanote

Leanote的配置存储在文件 conf/app.conf 中。

请务必修改app.secret一项, 在若干个随机位置处,将字符修改成一个其他的值, 否则会有安全隐患!

其它的配置可暂时保持不变, 若需要配置数据库信息, 请参照 Leanote问题汇总。

6、 运行Leanote

注意: 在此之前请确保 Mongodb 已在运行!

新开一个窗口, 运行:

revel run github.com/leanote/leanote


恭喜你, 打开浏览器输入: http://ip:9000 体验 Leanote 吧!

7、注意!!!

按照本教程启动 Mongodb 是没有权限控制的, 如果你的 Leanote 服务器暴露在外网, 任何人都可以访问你的 Mongodb 并修改, 所以这是极其危险的,请务必为 Mongodb 添加用户名和密码并以 auth 启动

为mongodb数据库添加用户

像mysql一样有 root 用户, mongodb 初始是没有用户的, 这样很不安全, 所以要为 leanote 数据库新建一个用户来连接 leanote 数据库(注意, 并不是为 leanote 的表 users 里新建用户, 而是新建一个连接 leanote 数据库的用户, 类似 mysql 的 root 用户).

mognodb v2与v3创建用户命令有所不同

mongodb v2 创建用户如下:

# 首先切换到leanote数据库下
> use leanote;
# 添加一个用户root, 密码是abc123
> db.addUser("root", "abc123");
{
"_id" : ObjectId("53688d1950cc1813efb9564c"),
"user" : "root",
"readOnly" : false,
"pwd" : "e014bfea4a9c3c27ab34e50bd1ef0955"
}
# 测试下是否正确
> db.auth("root", "abc123");
1 # 返回1表示正确


mongodb v3 创建用户如下:

# 首先切换到leanote数据库下
> use leanote;
# 添加一个用户root, 密码是abc123
> db.createUser({
user: 'root',
pwd: 'abc123',
roles: [{role: 'dbOwner', db: 'leanote'}]
});
# 测试下是否正确
> db.auth("root", "abc123");
1 # 返回1表示正确


用户添加好后重新运行下 mongodb , 并开启权限验证. 在 mongod 的终端按 ctrl+c 即可退出 mongodb .

启动 mongodb:

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


还要修改配置文件 : 修改 leanote/conf/app.conf:

db.host=localhost
db.port=27017
db.dbname=leanote # required
db.username=root # if not exists, please leave blank
db.password=abc123 # if not exists, please leave blank


8、设置后台运行

断开与服务器连接之后,mongodb & leanote 就停止工作了,我们还需要设置下后台运行

8.1 mongodb 设置后台运行

想在后台运行,启动时只需添加 –fork函数即可

可以在日志路径后面添加–logappend,防止日志被删除

mongod --fork --dbpath=/usr/local/leanote/data --logpath=/var/log/mongodb/mongodb.log --logappend


8.2 leanote 设置后台运行

使用
nohup
命令设置 leanote 后台运行

nohup revel run github.com/leanote/leanote 2>&1 &
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息