Oneinstack LNMP集成环境安装Leanote过程记录

最近各种考试,各科都要做一些随笔。我想要能够从电脑上写笔记,然后能从手机或者其他设备上随时查看,随时记忆。国内有印象笔记、有道云笔记等笔记软件,他们完全能够符合我的要求;但考虑到个人信息等隐私在国内一文不值的价值,我还是希望把这些数据放在我自己的服务器上,自建笔记服务。Leanote这个开源笔记软件就引起了我的兴趣。
Leanote是由国人开发的笔记软件,有商业化运作。但他们在Github上有完全开源的版本,尽管已经两年多没更新,但并不影响它的使用。于是我打算在我VPS的Oneinstack LNMP环境下进行安装Leanote了。我的VPS系统是CentOS7.

准备工作

Leanote使用的数据库是Mongodb。Mongodb是一个很流行的非关系型数据库。

Oneinstack环境安装Mongodb很简单,只要执行./install.sh按照提示选择Mondodb安装即可。设置的密码一定要记牢,下面还要用到。

安装完成后,先要对Mongodb进行一些配置,否则在后面正是安装,导入数据库的时候,报Failed: leanote.note_content_histories: error reading database: not authorized on leanote to execute的问题。

编辑Mongodb配置文件:vim /etc/mongod.conf

要修改两个地方:

  • 将net中的bindIp改为127.0.0.1,即使有防火墙也还是建议修改
  • 将security中的authorization改为disabled,关闭验证功能,当然导入数据后还可以再开启,27017端口不暴露在外网就可以一直关闭。

保存后,重启Mongodb service mongod restart

下载安装

可以到Leanote Github下载并解压Leanote:https://github.com/leanote/leanote/releases/

wget http://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz/download
mv download leanote-linux-amd64-v2.6.1.bin.tar.gz
tar -xzvf leanote-linux-amd64-v2.6.1.bin.tar.gz
rm -f leanote-linux-amd64-v2.6.1.bin.tar.gz

之后开始将Leanote的初始数据导入Mongodb,可以用pwd命令获取当前的工作目录:

mongorestore -h 127.0.0.1 -u root -p [你设置的Mongodb密码] -d leanote --dir [当前工作目录]/leanote/mongodb_backup/leanote_install_data/ --authenticationDatabase admin

出现一堆提示之后,如果没有报错信息,就导入成功啦!

之后就是对Leanote的配置,下面的内容跟官方文档基本一致了。

需要注意两点:

  • leanote的配置存储在文件 conf/app.conf 中,请务必修改app.secret一项, 在若干个随机位置处,将字符修改成一个其他的值, 否则会有安全隐患。
  • 管理员的信息为:username: admin, password: abc123 (管理员, 只有该用户才有权管理后台, 请及时修改密码)

最后,运行Leanote下bin目录下的run.sh就可以成功运行啦!

要想在外网访问,记得开放防火墙端口,用IP+端口号,或者你绑定的域名+端口号进行访问,但不推荐这么做,因为配置SSL等比较麻烦。

建议使用Nginx进行反向代理,Nginx配置文件很简单,一个location即可,建议删掉无关的配置以防止出现奇奇怪怪的问题。

server {
  listen 80;
  listen 443 ssl http2;
  ssl_certificate [证书位置];
  ssl_certificate_key [私钥位置];
  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
  ssl_prefer_server_ciphers on;
  ssl_session_timeout 10m;
  ssl_session_cache builtin:1000 shared:SSL:10m;
  ssl_buffer_size 1400;
  add_header Strict-Transport-Security max-age=15768000;
  add_header Cache-Control 'no-cache';
  server_name [你绑定的域名];
  access_log off;
  if ($ssl_protocol = "") { return 301 https://$host$request_uri; }

  error_page 404 /404.html;
  error_page 403 /403.html;
  error_page 502 /502.html;
  location / {
    proxy_pass http://127.0.0.1:[Leanote的端口号,默认9000];
    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
  }
}

At least, enjoy it!

参考资料

Leanote 二进制版详细安装教程 Mac and Linux · leanote/leanote Wiki

本文永久链接:https://blog.xmgspace.me/archives/oneinstack-lnmp-install-leanote.html
本文文章标题:Oneinstack LNMP集成环境安装Leanote过程记录
如文章内无特殊说明,只要您标明转载/引用自Xiaomage's Blog,您就可以自由的转载/引用文章。禁止CSDN/采集站采集转载。
授权协议:署名-非商业性使用-相同方式共享 4.0 国际(CC BY 4.0)
暂无评论

发送评论 编辑评论


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