搭建属于自己的云笔记——leanote
本文最后更新于 565 天前,其中的信息可能已经有所发展或是发生改变。

如果你想要搭建一个属于自己的云笔记的话,leanote是一个不错的选择。leanote除了网页版外,还提供了windows,Android以及iOS平台的客户端。不过在部署leanote的过程中,坑还是比较多的,下面就来记录一下,防止大家踩坑。

一、安装MongoDB

注意,这里一定要安装官方测试过的MongoDB的版本,如果无脑安装新版,最后你会发现leanote根本连不上。

直接下载安装官方使用的3.0.1版本吧

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.1.tgz
tar -xzvf mongodb-linux-x86_64-3.0.1.tgz -C /usr/local
mv /usr/local/mongodb-linux-x86_64-3.0.1 /usr/local/mongodb

添加环境变量并启动

nano /etc/profile
export PATH=$PATH:/usr/local/mongodb/bin
source /etc/profile
mkdir /usr/local/mongodb/data
mongod --dbpath /usr/local/mongodb/data

如果看到

[initandlisten] waiting for connections on port 27017

就说明启动成功了,留在这里启动着,重新开启一个ssh页面

二、下载与配置leanote

首先在官方下载地址下载你的环境适合的程序

例如

wget https://onboardcloud.dl.sourceforge.net/project/leanote-bin/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz

解压

tar -zxvf leanote-linux-amd64-v2.6.1.bin.tar.gz

向MongoDB中还原数据

mongorestore -h localhost -d leanote --dir leanote/mongodb_backup/leanote_install_data/

为了安全起见,需要添加一个账户,执行

mongo

在控制台中继续执行,其中user是用户名,pwd是密码

use leanote;
db.createUser({user:'root',pwd:'abc123',roles: [{role: 'dbOwner', db: 'leanote'}]})

应当看见

Successfully added user: {
        "user" : "root",
        "roles" : [
                {
                        "role" : "dbOwner",
                        "db" : "leanote"
                }
        ]
}

验证一下

db.auth("root", "abc123");

如果看到

1

说明成功了,此时按Ctrl+Z退出

这里经常容易出现的一个问题是,遇到报错

TypeError: db.addUser is not a function

这是因为V3版本后将addUser废弃了,你可能用的是旧的指令,请使用

db.createUser({user:'root',pwd:'abc123',roles: [{role: 'dbOwner', db: 'leanote'}]})

就不会出现问题

此时回到前面启动mongod的那个ssh界面,Ctrl+C中断掉,重新执行

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

接下来对leanote的配置文件进行一些修改,找到leanote安装目录下的/conf/app.conf

在文件中注意以下几个地方

  • 找到app.secret,为了安全性,务必更改
  • 找到db.username,更改为前面MongoDB中添加的用户名
  • 找到db.password,更改为前面MongoDB中添加的密码

再多提醒一句,你添加的值和后面的#注释间,务必要至少有一个空格,不要连在一起了

进入leanote目录下的bin目录,例如

cd leanote/bin

执行

bash run.sh

如果看到

Listening on.. 0.0.0.0:9000

就说明成功了

这里容易出现的几个报错

如果看见

panic: no reachable servers

首先检查MongoDB是否正常启动,可以敲mongo指令看能否正常进入

如果一切都没有问题,那么还有一种可能就是,你安装的MongoDB版本太新了,这个leanote他就是连不上。。。

如果看见

panic: server returned error on SASL authentication step: Authentication failed.

说明你启动MongoDB的时候没有加上--auth参数,请关闭mongo后重新执行

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

此时打开http://ip:9000就能访问leanote了。

程序默认有两个用户

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

三、添加后台运行

这里使用supervisor来守护进程

首先关掉之前ssh中开启的mongodb

安装supervisor

apt install supervisor

更改supervisor配置

nano /etc/supervisor/supervisord.conf

[include]
files = /etc/supervisor/conf.d/*.conf

改为

[include]
files = /etc/supervisor/conf.d/*.conf /etc/supervisor/example.ini 

进程配置会读取/etc/supervisor/conf.d目录下的*.conf配置文件,因此在这里添加mongodb的配置文件

nano /etc/supervisor/conf.d/mongodb.conf

写入

[program:mongodb]
directory=/usr/local/mongodb/bin
command=/usr/local/mongodb/bin/mongod --dbpath /usr/local/mongodb/data --auth
autostart=true
autorestart=true
startretries=10
redirect_stderr=true
stdout_logfile=/usr/local/mongodb/supervisor.log
environment=ASPNETCORE_ENVIRONMENT="Development"

接着添加leanote

nano /etc/supervisor/conf.d/leanote.conf

写入

[program:leanote]
directory=YOUR_LEANOTE_PATH/bin
command=bash run.sh
autostart=true
autorestart=true
startretries=10
redirect_stderr=true
stdout_logfile=/root/leanote/supervisor.log
environment=ASPNETCORE_ENVIRONMENT="Development"

注意这里的LEANOTE_PATH换为你的leanote路径

授予权限

sudo chmod 777 /var/run
sudo chmod 777 /etc/supervisor

启动supervisor

supervisord

重新加载配置

supervisorctl reload

就没问题了

leanote网页版

如果需要,可以使用NGINX反代,本文就不赘述了,可以参考这篇文章

四、APP使用

官方app下载页面下载程序

以windows版本为例,

leanote登录页

选择最底部的登录自建服务,输入站点,用户名,密码即可登录

-=||=-收藏
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇