部署Leanote 蚂蚁笔记

选择leanote的原因

Leanote 虽然最后一次更新是在 2018 年,但其开源特性使得部署和维护成本较低。由于客户信息及服务器信息等极为重要,若放在公网的笔记平台,会存在信息泄露风险,因此选择本地部署。如果采用本地的 word、excel 保存并放入 svn 上也是一种方式,但在检索文件内部信息时不够灵活。而部署 Leanote 后,不仅可以作为部门内部的知识库,方便分享和检索,还能极大地提高信息管理的效率和安全性。

环境

mongodb

nginx

参考

https://github.com/leanote/leanote/wiki/Leanote-%E4%BA%8C%E8%BF%9B%E5%88%B6%E7%89%88%E8%AF%A6%E7%BB%86%E5%AE%89%E8%A3%85%E6%95%99%E7%A8%8B----Mac-and-Linux

官方的文档;很多问题都可以从中找到解决方式

下载

https://github.com/leanote/leanote/releases/tag/2.6.1

或者

http://leanote.org/#download

image

部署

安装mongodb

具体参考:mongodb在linux下的部署

恢复mongodb数据

/opt/leanote/mongodb_backup
# 恢复数据
mongorestore -h localhost -u admin -p P@ssw0rd --authenticationDatabase admin -d leanote --dir leanote_install_data 

mongodb创建用户

mongosh 

use leanote
db.createUser({user:"leanote", pwd:"1234567Aa.",roles:[ { role: "dbOwner", db: "leanote" }]})

mongodb删除用户 (记录一下命令)
db.dropUser(“leanote”)

修改密码
db.updateUser(“usertest”,{pwd:“changepass1”});

编辑app.conf

vi /opt/leanote/conf/app.conf

修改mongodb的用户名密码 并保存

image

注意:

  • mongodb中的密码不要有特殊字符,否则无法连接。但是客户端可以连接,有可能还有别的设置方式。
  • site.url 不要填写localhost 或者 127.0.0.1 ; 需要填写服务器的ip;否则图片同步会有问题
  • i18n.default_language=zh-cn 改为中文

启动

cd /opt/leanote/bin
nohub bash run.sh &

image

启动成功

编写快捷启动脚本,start.sh stop.sh

start.sh

#!/bin/bash
echo "开始启动"
export PYTHONUNBUFFERED=1
nohup bash bin/run.sh > log/leanote.log 2>&1 &
echo "启动结束"

stop.sh

#!/bin/bash

process_id=$(ps -ef | grep leanote | grep -v "grep" | awk '{print $2}')
if [[ ! -z "$process_id" ]]
then
    echo "杀死进程:[$process_id]"
    kill -9 $process_id
else
    echo "进程id是空的"
fi

mongodb的备份与恢复

编写脚本(备份leanote)

# 示例

#!/usr/bin/env bash

DATE=`date +%Y_%m_%d` #获取当前系统时间
DAYS=3 #DAYS=3代表删除3天前的备份,即只保留最近3天的备份
TAR_BAK="mongod_bak_$DATE.tar.gz" #最终保存的数据库备份文件名
mongodump -d leanote -u=leanote -p=1234567Aa. -o /opt/leanote-bak/$DATE --authenticationDatabase=leanote
cp -r /opt/leanote/files /opt/leanote-bak/$DATE
tar -zcvf /opt/leanote-bak/$TAR_BAK /opt/leanote-bak/$DATE
rm -rf /opt/leanote-bak/$DATE
find /opt/leanote-bak/ -mtime +$DAYS -delete
# 防止以外,另一台服务器也传一份
sshpass -p 123456 scp -r -o StrictHostKeyChecking=no /opt/leanote-bak/$TAR_BAK ccdc@10.0.99.115:/home/ccdc/leanote-bak/
sshpass -p 123456 ssh -o StrictHostKeyChecking=no ccdc@10.0.99.115 "find /home/ccdc/leanote-bak/ -mtime +3 -delete"

添加定时任务,每天备份一次

vi /etc/crontab

image

systemctl restart crond.service

leanote自带的备份与恢复

admin用户登录后,去后台管理中配置 mongodump,mongorestore 工具的位置

image

就可以备份与恢复了。 这里备份的是mongodb数据; files文件不会备份。

配置pdf导出

QA · leanote/leanote Wiki (github.com)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavaOpsPro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值