首页
碎碎念
东邻西舍
本站信息
前来吐槽
统计
Search
1
openwrt系统上安装第三方插件
26,758 阅读
2
ubuntu下zerotier的基本使用教程
13,578 阅读
3
给小米R3G更换系统:从padavan刷成openwrt
12,848 阅读
4
openwrt使用第一步:设置上网拨号
10,741 阅读
5
openwrt无线中继功能:实现不插网线就能上网
9,519 阅读
学习点滴
Java
Web前端
Linux
踩坑实录
折腾搞机
关于建站
只言片语
登录
Search
标签搜索
Linux
建站
Java
踩坑实录
Ubuntu
MySQL
折腾搞机
HTML
CSS
MyBatis
Spring
SQL
Nginx
路由器
树莓派
OpenWrt
Maven
Git
Win10
只言片语
知识分子没文化
累计撰写
83
篇文章
累计收到
152
条评论
首页
栏目
学习点滴
Java
Web前端
Linux
踩坑实录
折腾搞机
关于建站
只言片语
页面
碎碎念
东邻西舍
本站信息
前来吐槽
统计
搜索到
2
篇与
的结果
2021-06-15
使用蚂蚁笔记搭建个人云笔记
目录: 前言 1.安装MongoDB 2.下载 3.安装 4.启动 5.其他 5.1 加入开机自启 5.2 设置nginx代理 环境说明: 系统:ubuntu 20.04 数据库:MongoDB 4.4.6 leanote V2.6.1 前言 蚂蚁笔记官网:Leanote 蚂蚁笔记,有极客范的云笔记! 类似于有道笔记、印象笔记等,蚂蚁笔记也是一款笔记软件,最重要的是蚂蚁笔记是开源的,这就意味可以自己搭建服务端。而我的网站平时访客不多,服务器大部分时候处于闲置状态,所以搭建一个属于自己的云笔记是一个不错的选择。 蚂蚁笔记github首页地址:Leanote - open source alternative to Evernote · GitHub,可以下载到各个平台的蚂蚁笔记客户端。 1.安装MongoDB 蚂蚁笔记使用的是MongoDB来存储文章数据,并不是mysql。 ubuntu系统下安装MongoDB的过程参考我的另一篇博客:ubuntu安装MongoDB数据库 - Roookie博客 | 记录 · 收纳 · 分享 (langp.wang),此处不再赘述。 2.下载 用以下命令下载安装文件: sudo wget https://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz 然后解压: sudo tar -zxvf leanote-linux-amd64.v2.6.1.bin.tar.gz 解压后的文件夹名称为”leanote“。 如果要手动下载也行,蚂蚁笔记下载地址:Leanote。下载时选择“leanote-linux-amd64.v2.6.1.bin.tar.gz”: 3.安装 先往MongoDB中导入初始数据: # 执行命令时位于“leanote”同级目录下,此命令适用于MongoDB没有开启安全授权的情况 mongorestore -h localhost -d leanote --dir leanote/mongodb_backup/leanote_install_data/ # 当MongoDB开启安全授权时,需要加入“--authenticationDatabase”(后面是用户所在的数据库)与“-u”参数(后面是用户名)执行此命令,否则就会导入失败 mongorestore -h localhost -d leanote --dir leanote/mongodb_backup/leanote_install_data/ --authenticationDatabase admin -u root 控制台界面滚动几下之后,出现“499 document(s) restored successfully. 0 document(s) failed to restore.”字样提示,说明导入成功。 接下来为leanote数据库添加一个账户: # 进入数据库控制台 mongo # 首先切换到leanote数据库下 use leanote; # 添加一个用户root, 密码是abc123 db.createUser({ user: 'root', pwd: 'abc123', roles: [{role: 'dbOwner', db: 'leanote'}] }); # 测试下是否正确,返回1表示正确 db.auth("root", "abc123"); 并修改配置文件leanote/conf/app.conf,找到下面两行: # 填入上面设置的账户密码 db.username=root # if not exists, please leave blank db.password=abc123 # if not exists, please leave blank 根据蚂蚁笔记的官方安装文档,还要将配置文件中的app.secret一项任意做一些更改,否则会有安全隐患 4.启动 蚂蚁笔记的启动脚本位于leanote/bin/目录下,执行脚本启动命令: sudo bash leanote/bin/run.sh 启动后,蚂蚁笔记默认运行在9000端口上,访问的话需要在云服务器的安全组中放行这个端口。访问IP地址或者域名的9000端口即可进入首页: 5.其他 5.1 加入开机自启 将蚂蚁笔记加入开机自启,在/etc/init.d目录下新建一个脚本文件: sudo nano /etc/init.d/leanote.sh 输入以下内容,并根据注释更改相关内容: #!/bin/bash ### BEGIN INIT INFO # Provides: leanote # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start leanote # Description: start leanote ### END INIT INFO # 上面一部分不可少,下面这一部分是命令内容,以exit 0结束 bash /root/leanote/bin/run.sh exit 0 修改完之后ctrl +o保存,ctrl +x退出。执行以下语句给脚本文件足够的执行权限: sudo chmod 755 leanote.sh 最后再将脚本添加到开机启动: sudo update-rc.d leanote.sh defaults 90 # 90表示执行的优先级,数字越大表示越晚执行。 附:移除脚本命令: sudo update-rc.d -f [脚本文件名] remove 5.2 设置nginx代理 为了方便访问,我们可以单独设置一个域名来访问蚂蚁笔记,原理是利用nginx进行反向代理,将本机的9000端口的所有请求转发到新域名上,新建一个nginx配置: upstream note { server 127.0.0.1:9000; } server{ listen 80; # SSL端口配置 listen 443 ssl; # domainName是域名 server_name domainName; location / { proxy_pass http://note; } # 以下为SSL配置部分 没有配置SSL证书的直接删除以下配置即可 # 设置http强制跳转https if ($server_port = 80){ rewrite ^/(.*) https://$host/$1 permanent; } #需要将cert-file-name.pem替换成已上传的证书文件的名称。 ssl_certificate cert-file-name.pem; #需要将cert-file-name.key替换成已上传的证书密钥文件的名称。 ssl_certificate_key cert-file-name.key; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DHE; #表示使用的TLS协议的类型。 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; } 然后重启nginx配置即可: nginx -s reload 附上官方github的wiki:Home · leanote/leanote Wiki · GitHub
2021年06月15日
1,745 阅读
0 评论
0 点赞
2021-06-11
ubuntu安装MongoDB数据库
目录: 前言 1、导入MongoDB公共 GPG 密钥 2、创建列表文件 3、用命令安装MongoDB 3.1 安装最新版本 3.2 安装指定版本 4.启动MongoDB 4.1 systemed(systemctl): 4.2 System V Init(service): 5.管理MongoDB数据库 6.卸载MongoDB 附:在更改MongoDB连接端口时遇到的坑 环境说明: 系统:ubuntu 20.04 MongoDB:V4.4.6 前言 MongoDB是一种面向文档的数据库管理系统,即非关系型数据库,用C++等语言撰写而成,以解决应用程序开发社区中的大量现实问题。MongoDB由MongoDB Inc.(当时是10gen团队)于2007年10月开发,2009年2月首度推出,现以服务器端公共许可(SSPL)分发。 MongoDB社区版是免费的,包含Windows、Linux和OS X的二进制版本。许多Linux包管理系统曾经包含MongoDB的包,由于许可证变更,MongoDB已经从Debian、Fedora和Red Hat Enterprise Linux发行版中被移除。 本篇博客中ubuntu安装MongoDB的过程参考自MongoDB官网:Install MongoDB Community Edition on Ubuntu — MongoDB Manual,其他派系Linux安装MongoDB请参考:Install MongoDB Community Edition on Linux — MongoDB Manual。 1、导入MongoDB公共 GPG 密钥 用以下命令从https://www.MongoDB.org/static/pgp/server-4.4.asc导入MongoDB公共GPG密钥: wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add - 出现OK字样表示导入成功。若中途提示gnupg未安装,用以下命令安装: sudo apt-get install gnupg 安装之后尝试重新导入,直至出现OK字样。 2、创建列表文件 在ubuntu上创建列表文件/etc/apt/sources.list.d/mongodb-org-4.4.list,不同版本的ubuntu命令也不同(其实只是命令中的版本号不同): # Ubuntu 20.04 (Focal): echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list # Ubuntu 18.04 (Bionic) echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list # Ubuntu 16.04 (Xenial) echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list 若不确定系统版本号,用“lsb_release -a”命令查看,“Codename”一项即是版本号 3、用命令安装MongoDB 3.1 安装最新版本 输入以下命令安装MongoDB,默认安装最新版: # 更新软件源中的所有软件列表: sudo apt update sudo apt-get install -y mongodb-org 3.2 安装指定版本 如果要安装指定版本,必须分别指定每个组件包和版本号,比如: sudo apt-get install -y mongodb-org=4.4 mongodb-org-server=4.4 mongodb-org-shell=4.4 mongodb-org-mongos=4.4 mongodb-org-tools=4.4 如果只安装MongoDB-org = 4.4,并且不包含组件包,那么无论指定了哪个版本,都将安装每个 MongoDB 包的最新版本。 在安装完指定的MongoDB版本后,用apt命令升级软件时仍会升级到新版本的MongoDB。因此为了防止意外升级,可以将软件包固定在当前安装的版本上: echo "mongodb-org hold" | sudo dpkg --set-selections echo "mongodb-org-server hold" | sudo dpkg --set-selections echo "mongodb-org-shell hold" | sudo dpkg --set-selections echo "mongodb-org-mongos hold" | sudo dpkg --set-selections echo "mongodb-org-tools hold" | sudo dpkg --set-selections 4.启动MongoDB 要运行和管理mongod进程,将使用操作系统内置的init系统。Linux的新版本倾向于使用systemd(使用 systemctl 命令) ,而Linux的旧版本倾向于使用System v init(使用service命令)。这就导致不同的init系统操作mongod进程的命令不同,请根据系统的不同来使用。 如果不确定平台使用的是哪个init系统,请运行以下命令: ps --no-headers -o comm 1 然后根据结果选择下面的相应命令: systemd - 选择4.1 systemd (systemctl) 。 init - 选择4.2 System V Init (service)。 4.1 systemed(systemctl): # 启动MongoDB: sudo systemctl start mongod # 并将其加入开机启动项: sudo systemctl enable mongod # 用以下命令验证MongoDB是否启动运行成功: sudo systemctl status mongod # 停止MongoDB: sudo systemctl stop mongod # 重新启动MongoDB: sudo systemctl restart mongod 若启动时,出现错误:“Failed to start mongod.service: Unit mongod.service not found”,则运行以下命令: sudo systemctl daemon-reload 然后再次运行start命令即可: sudo systemctl start mongod 4.2 System V Init(service): # 启动MongoDB: sudo service mongod start # 用以下命令验证MongoDB是否启动运行成功: sudo service mongod status # 停止MongoDB: sudo service mongod stop # 重新启动MongoDB: sudo service mongod restart 验证MongoDB启动成功是这样的: MongoDB启动之后默认运行在27017端口。其配置文件在“/etc/mongod.conf”,运行端口等信息可在配置文件中修改。 5.管理MongoDB数据库 使用Robo 3T来管理MongoDB数据库,Robo 3T下载地址:Robomongo 开启远程连接之前,我们先要建立一个管理员用户,因为MongoDB默认是没有用户的。在控制台输入命令连接数据库: mongo # 如果更改了默认连接端口,则在连接时还需要指定连接端口 mongo -port 端口号 连接到数据库之后使用以下语句来建立一个管理员用户: # 选择连接admin数据库 use admin # 创建一个用户名为“root”,密码为“1234”管理员用户: db.createUser( { user:"root", pwd:"1234", roles:[{role:"root",db:"admin"}] } ) 创建成功的话会有“successfully”字样提示。使用“db.getUsers()”命令可以查询当前所有用户。 默认情况下,MongoDB是不允许远程连接的,所以需要在/etc/mongod.conf配置文件中进行一些配置。编辑配置文件: sudo nano /etc/mongod.conf 这是官网中对于配置文件mongod.conf每一个选项的详细介绍:Configuration File Options — MongoDB Manual。 配置文件中有一项是”net“,下面的”bindIp“一项的值原来是127.0.0.1,表示只能由本机访问MongoDB数据库,为了能远程访问管理数据库,需要将这项的值修改为0.0.0.0 net: port: 27017 - bindIp: 127.0.0.1 + bindIp: 0.0.0.0 同时,此时的数据库任何人使用任何网络都能连接,极度不安全。因此我们需要开启安全授权,同样的,在配置文件/etc/mongod.conf中添加如下内容: security: authorization: "enabled" 修改完之后保存退出,然后重启mongod服务: sudo systemctl restart mongod 然后我们就可以用这个用户登录管理数据库了。 更多MongoDB数据库用户的操作请参考:MongoDB添加用户 - MongoDB教程™ (yiibai.com) 打开Robo 3T客户端,新建一个Connection。输入服务器的ip地址或域名,端口填写默认的27017(或者修改之后的端口)。然后切换Authentication选项卡,在第一行前打上勾,输入框中输入用户名密码,填写完之后点击下面Test按钮,若是测试连接无误,点击Save保存下来,就能连接到数据库了。 附:在更改MongoDB连接端口时遇到的坑 MongoDB端口可以在配置文件/etc/mongod.conf进行更改,更改net选项下port的值即可。更改完需要重启MongoDB服务,下次用软件连接数据库时就要更换成更改后的端口。但是用mongo命令在控制台上登录数据库时,就会报错: 这是因为在用mongo命令是依然默认连接的是27017端口,而不是修改之后的端口,因此使用此命令时需要指定端口进行连接: mongo -port 新端口 6.卸载MongoDB 首先停止mongod进程: # systemed(systemctl): sudo systemctl stop mongod # System V Init(service): sudo service mongod stop 删除以前安装的任何 MongoDB 包: sudo apt-get purge mongodb-org* 删除 MongoDB 数据库和日志文件: sudo rm -r /var/log/mongodbsudo rm -r /var/lib/mongodb
2021年06月11日
1,999 阅读
0 评论
0 点赞