章工运维 章工运维
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)

章工运维

业精于勤,荒于嬉
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)
  • linux

  • windows

  • 中间件

  • 网络

  • 安全

  • 存储

  • 防火墙

  • 数据库

  • 系统

  • docker

  • other

    • debian中科大替换教程
    • Alpine安装php各种扩展
    • 使用http-server启动本地服务
    • windows文件同步备份
    • axure将项目同步到svn和axhub
    • Makefile入门
    • Rsyslog开源日志服务器
    • 在windows64位系统安装mysql
    • 博客vue报错版本依赖问题解决
    • VMware搭建群晖
    • 一个开源的照片管理程序——photoprism
    • 搭建属于自己的云笔记——leanote
      • 一、安装 MongoDB
      • 二、下载与配置 leanote
      • 三、添加后台运行
    • 浏览器跨域问题
    • 从0到1搭建支付和发卡系统
    • 运维常见故障及排查方法
    • 高德MCP智能体搞定旅游计划
    • 不花一分钱从0到1建站教程
  • 监控

  • 运维
  • other
章工运维
2024-07-12
目录

搭建属于自己的云笔记——leanote

如果你想要搭建一个属于自己的云笔记的话,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
1
2
3

添加环境变量并启动

nano /etc/profile
export PATH=$PATH:/usr/local/mongodb/bin
source /etc/profile
mkdir /usr/local/mongodb/data
mongod --dbpath /usr/local/mongodb/data
1
2
3
4
5

如果看到

[initandlisten] waiting for connections on port 27017
1

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

# 二、下载与配置 leanote

首先在官方下载地址 (opens new window)下载你的环境适合的程序

例如

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

解压

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

向 MongoDB 中还原数据

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

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

mongo

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

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

应当看见

Successfully added user: {
        "user" : "root",
        "roles" : [
                {
                        "role" : "dbOwner",
                        "db" : "leanote"
                }
        ]
}
1
2
3
4
5
6
7
8
9

验证一下

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

如果看到

1

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

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

TypeError: db.addUser is not a function
   

1
2
3

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

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

就不会出现问题

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

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

接下来对 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
   

1
2
3
4
5
6
7

就说明成功了

这里容易出现的几个报错

如果看见

panic: no reachable servers
1

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

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

如果看见

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

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

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

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

程序默认有两个用户

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

# 三、添加后台运行

这里使用 supervisor 来守护进程

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

安装 supervisor

apt install supervisor
1

更改 supervisor 配置

nano /etc/supervisor/supervisord.conf
1
#将
[include]
files = /etc/supervisor/conf.d/*.conf
#改为
[include]
files = /etc/supervisor/conf.d/*.conf /etc/supervisor/example.ini
1
2
3
4
5
6

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

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

1
2

写入

[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"
1
2
3
4
5
6
7
8
9

接着添加 leanote

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

写入

[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"
1
2
3
4
5
6
7
8
9

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

授予权限

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

启动 supervisor

supervisord
1

重新加载配置

supervisorctl reload
1

原文链接 (opens new window)

微信 支付宝
上次更新: 2024/07/12, 14:35:39

← 一个开源的照片管理程序——photoprism 浏览器跨域问题→

最近更新
01
shell脚本模块集合
05-13
02
生活小技巧(认知版)
04-29
03
生活小技巧(防骗版)
04-29
更多文章>
Theme by Vdoing | Copyright © 2019-2025 | 点击查看十年之约 | 鄂ICP备2024072800号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式