Leanote安装笔记

Leanote官方简介

高效笔记:Leanote 有易操作的界面, 包含一款富文本编辑器和Markdown编辑器,让您的笔记记录更轻松和高效。对高阶用户,我们还提供Vim 和Emacs 编辑模式,助推你的写作速度更上层楼。
知识管理: Leanote 灵活而强大的“笔记本-笔记-标签”系统,让它成为你个人知识管理的利器。
分享: 你可以通过Leanote同好友分享知识、想法和经历, 邀请好友加入你的笔记簿,通过云端交流信息。
协作: Leanote协助你与同事之间相互协作,激荡新思路,随时随地头脑风暴。
博客: Leanote也可以作为你的个人博客, 把你的知识传播的更远!

其实我也是因为电脑操作系统换成了ArchLinux之后,一直没有找到合适的笔记软件,之前一直都是在用Windows下的OneNote,无奈这个玩意是肯定不会出Linux版本了,加上他对MarkDown基本也是不支持的,对于写code的码农来说支持不是特别好,所以我就找打了这个开源的笔记系统,开源也有好处,至少内容不会在被审查,想放什么就放什么,没有违禁词之类的,完全自由开放,这才是真正的极客精神呀。

安装

自己搭建服务器安装Leanote过程还是比较简单的,本次选用的平台是Raspberry Pi3,一个7×24小时不断电的小电脑,性能不高,但是功耗低,非常适合这中个人小服务的运行。

Leanote是基于GolangMongoDB的一套系统,所以我们就按照官方给出的教程进行安装。

官方教程地址
详细地址

MongoDB安装

MongoDB是新兴起的一个非关系型数据库,官方给出的安装方式是到官方网站上下载可执行程序,其实可以直接通过APT的形式进行安装:

sudo apt install mongodb

安装完成后我们可以通过以下命令修改默认配置:

sudo vim /etc/mongodb.conf

比如可以通过以下方式修改数据目录:

# Where to store the data.
dbpath=/home/pi/apps/leanote/mongodb
#where to log
logpath=/var/log/mongodb/mongodb.log
logappend=true
bind_ip = 127.0.0.1

安装之后可以通过sudo service mongodb restart重启mongodb,通过mongo命令测试能否连接到mongodb服务,我这里会报一个权限错误,具体错误可以通过vim /var/log/mongodb/mongodb.log查看,我也懒得查看到底怎么配置目录权限,就直接chmod 777 mongodb了。

搞定目录权限之后Mongo就可以正常运行了,这块就算完成了。

Leanote二进制安装

Leanote的二进制还是挺全的,直接就有树梅派上运行的二进制。在运行之前我们需要做必要的配置,配置文件位于leanote/conf/app.conf,配置文件可以修改端口号和密钥。我这里因为安全原因把监听地址改成了127.0.0.1另外还可以设置数据库的用户名和密码等信息。相应的设置修改完成之后就可以启动服务了,可以通过如下的命令启动:

bash leanote/bin/run.sh

开启远程服务

安装过程中最为麻烦的就是这部分了,主要是因为我的树梅派用的是家里的宽带,公网上没法直接访问80端口,而我公司电脑上又有端口限制,一般都是只能开80和443,现在看来80是没戏了,只好用443端口了,而443端口是HTTPS协议,配置起来稍微麻烦一点不说,还要申请证书,证书我之前用过阿里云的证书,这个期限只有一年,并且有数量限制,另外还用过https://letsencrypt.org一段时间,这个比较方便,可以一次申请,自动更新,并且配置什么的都是全自动的,当时在我个人的服务器上用过一段时间,另外还有freessl.cn上面可以申请证书。

LetsEncrypt

这个要是配置得当,可以说是最为简单的一种配置方式,不过在我树梅派上一直没能搞定,知道后来我才想明白是怎么回事,原来这个证书并不是随便就给你的,你要证明这个域名是你的,怎么证明呢,一般是在网站放一个文本,域名提供商去访问这个文本,如果内容匹配说明该域名属于你,而在树莓派上面有两个问题:

  1. Nginx工作在转发模式,没有托管目录,也就没法放相应的验证文本
  2. 树莓派80端口无法对公网开放,所以证书服务器不会验证通过。

Freessl

Freessl是一个证书服务商,对于个人而言,申请证书还是比较方便的,并且支持基于DNS解析的验证方式,所以最终还是在Freessl上面申请的证书,最终配置通过,下面就列一下Nginx的配置文件

server {
server_name pi.linxy.win;
client_max_body_size 50M;
location / {
proxy_pass        http://127.0.0.1:9443;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}
}
server
{
listen  localhost:9000 ssl;
server_name  pi.linxy.win;
# ssl_certificate /home/pi/apps/leanote/ssh_crt/fullchain.pem; # managed by Certbot
# ssl_certificate_key

----------


 /home/pi/apps/leanote/ssh_crt/privkey.pem; # managed by Certbot
# include /home/pi/apps/leanote/ssh_crt/options-ssl-nginx.conf; # managed by Certbot
# ssl_dhparam /home/pi/apps/leanote/ssh_crt/ssl-dhparams.pem; # managed by Certbot
ssl_certificate /home/pi/apps/leanote/freessl/full_chain.pem;
ssl_certificate_key /home/pi/apps/leanote/freessl/private.key;
location / {
proxy_pass        http://127.0.0.1:9443;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
}
}

开心玩耍

证书申请配置完成之后看就可以直接在浏览器中打开笔记了。


本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。

相关文章

仅有 1 条评论
  1. Major

    评论不好用

    Major 回复
发表新评论