私人云笔记 Leanote 服务端搭建

#基本安装步骤:

  1. 下载 leanote 二进制版。
  2. 安装 mongodb
  3. 导入初始数据。
  4. 配置 leanote
  5. 运行 leanote
  6. 开机自启

#1. 下载 leanote 二进制版

由此处下载 leanote 最新二进制版

如果有点慢可以在Windows上下载好以后上传上去,其实速度差别不大

假设将文件下载到 /home/user1 目录下, 解压文件从而在 /home/user1 目录下生成 leanote目录:

1
2
$ cd /home/user1
$ tar -xzvf leanote-linux-amd64-v2.6.1.bin.tar.gz

#2. 安装 mongodb

#2.1 安装 mongodb

Ubuntu下可以直接下载安装mongodb,那么以下直到测试部分都可不管。

1
$ sudo apt-get install mongodb

也可以参照官方wiki,到 mongodb 官网 下载相应系统的最新版安装包,或者从以下链接下载旧版本:

下载到 /home/user1下, 直接解压即可:

1
2
$ cd /home/user1
$ sudo tar -zxvf mongodb-linux-x86_64-ubuntu1404-3.2.4.tgz -C /usr/local

到/usr/local/目录下配置用户名及用户组

1
2
$ cd /usr/local/
$ sudo chown -R harogo:harogo mongodb

为了快速使用mongodb命令, 可以配置环境变量。编辑 ~/.profile/etc/profile 文件, 将mongodb/bin路径加入即可:

1
$ sudo vim /etc/profile

此处实例使用了vim文本编辑器,你可以使用自己熟悉的编辑器。

/etc/profile中添加以下行,注意把应的文件目录名(mongodb)替换成自己系统中的名称:

1
export PATH=$PATH:/usr/local/mongodb/bin

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

1
$ source /etc/profile

#2.2 测试mongodb安装

先在/home/user1下新建一个目录data存放mongodb数据:

1
mkdir /home/user1/data

用以下命令启动mongod(user1更换为自己的用户名或文件路径):

1
mongod --dbpath /home/user1/data

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

1
2
3
$ mongo
> show dbs
...数据库列表

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


#3. 导入初始数据

leanote初始数据存放在 /home/user1/leanote/mongodb_backup/leanote_install_data中。

打开终端, 输入以下命令导入数据(自行更改user1)。

1
$ mongorestore -h localhost -d leanote --dir /home/user1/leanote/mongodb_backup/leanote_install_data/

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

1
2
3
4
5
6
7
8
9
10
11
12
$ mongo
> show dbs # 查看数据库
leanote 0.203125GB
local 0.078125GB
> use leanote # 切换到leanote
switched to db leanote
> show collections # 查看表
files
has_share_notes
note_content_histories
note_contents
....

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

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

#4. 配置leanote

#4.1修改app.secret

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

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

其它的配置可暂时保持不变, 其他配置稍后也会更改

#4.2为mongodb数据库添加用户

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

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

可以通过mongo --version查看mongodb的版本

mongodb v2 创建用户如下:

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

mongodb v3 创建用户如下:

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

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

启动mongodb:

1
$ mongod --dbpath /home/user1/data --auth

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

1
2
3
4
5
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

#4.3修改默认管理员

前提是你已经把数据表中的admin更改为自己想要的名字。如下

1
2
$ mongo
>use leanote

接下来更改app.conf,将adminUsername=admin更改为adminUsername=harogo


#5. 运行leanote

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

新开一个窗口, 运行:

1
2
$ cd /home/user1/leanote/bin
$ bash run.sh

最后出现以下信息证明运行成功:

1
2
3
4
...
TRACE 2013/06/06 15:01:27 watcher.go:72: Watching: /home/life/leanote/bin/src/github.com/leanote/leanote/conf/routes
Go to /@tests to run the tests.
Listening on :9000...

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

#6.添加开机自启

当在服务器端部署时发现每次关闭终端后程序也就关闭了,所以要给这个run.sh添加一个开机自启

在/etc/目录下,修改rc.local文件,如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
!/bin/bash -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/home/harogo/leanote/bin/run.sh

exit 0

如果第一行前面有#注释将其去掉,如果是!/bin/sh -e改为!/bin/bash -e

#leanote 安装/配置问题汇总

如果运行有问题或想要进一步配置leanote, 请参照 leanote问题汇总

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×