环境:Ubuntu16.0
1. 安装MongoDB
leanote
使用的是MongoDB
,因此首先需要安装MongoDB
服务。
首先添加MongoDB
签名:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
然后更新软件原列表:
sudo apt-get update
创建list文件并写入命令:
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
Ubuntu14与Ubuntu16命令有所不同,Ubuntu14命令如下:
echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
安装MongoDB
:
sudo apt-get install -y mongodb-org
MongoDB服务命令:
$ sudo service mongod start //启动服务
$ sudo service mongod stop //停止服务
$ sudo service mongod restart //重启服务
$ sudo apt-get purge mongodb-org* //移除包文件
$ sudo rm -r /var/log/mongodb
$ sudo rm -r /var/lib/mongodb //删除数据目录
2、部署leanote
下载leanote二进制安装包文件,用winSCP
上传至/home
目录或用户目录下,将下载的压缩包解压至/etc
目录:
tar -xzvf /home/leanote-xxxxx.tar.gz -C /etc/leanote
进入leanote文件夹,查看内容,如下:
$ cd /etc/leanote
$ ls
app bin conf messages mongodb_backup public
导入初始数据到MongoDB:
mongorestore -h localhost -d leanote --dir /etc/leanote/mongodb_backup/leanote_install_data/
上面的导入命令是MongoDB v3版本的用法,v2版本于此有所差异,v2版本语法如下:
mongorestore -h localhost -d leanote --directoryperdb /home/user1/leanote/mongodb_backup/leanote_install_data/
配置leanote
,将/etc/leanote/con/app.config
的app.secret
项的内容随意设置一个值,否则会有安全问题(官网如此强调的,具体什么问题不知)。
3、使leanote
保持后台运行并开机启动
虽然现在可以通过运行命令bash /etc/leanote/bin/run.sh
运行程序,但程序运行后会占用一个终端,终端关闭后程序也会停止,无法常驻后台,通过进程守护supervisord
来让其常驻后台并开机自启。
首先下载Python工具:
apt-get install python-setuptools
安装supervisord
:
easy_install supervisor
创建配置目录:
mkdir /etc/supervisord
创建配置文件:
echo_supervisord_conf>/etc/supervisord/supervisord.conf
编辑配置文件:
vi /etc/supervisord/supervisord.conf
加入以下配置:
[program:leanote]
command=bash /etc/leanote/bin/run.sh
directory=/etc/leanote/bin
autorestart=true
redirect_stderr=true
启动supervisord
:
supervisord
启动配置:
supervisord -c /etc/supervisor/supervisord.conf
如此,leanote便以在后台启动,浏览器访问ip:9000
即可访问,默认管理员用户名和密码分别为:
用户名:admin
密码:abc123
当关机重启后或者leanote
因其他原因被终止时,supervisord
会自动拉取leanote
,启动服务。supervisord
相关命令:
sudo supervisord -c 配置文件目录 #启动supervisor
sudo supervisorctl reload #重新加载supervisor
终止一条supervisord
配置时,先查看进程情况:
$ ps -ef | grep supervisord
root 11639 1 0 03:44 ? 00:00:00 /usr/bin/python /usr/local/bin/supervisord -c /etc/supervisor/supervisord.conf
root 11810 9177 0 03:50 pts/0 00:00:00 grep --color=auto supervisord
杀死进程:
kill -s SIGTERM 11639