一、基础环境LNMP

安装nginx:

yum install epel-release -y

yum install nginx -y

# 启动 nginx

systemctl start nginx

# 将 nginx 设置为开机启动

systemctl enable nginx

安装php:

yum install php php-mysql php-fpm php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc -y

安装mysql:

自从 mysql 被收购之后,我们就不使用了,而是使用一个叫 mariadb 的从 mysql 发展而来的数据库,完全兼容。

除了名字不一样,哪哪就兼容。

# 安装 mariadb

yum install mariadb-server mariadb

# 启动 mariadb

systemctl start mariadb

# 将 mariadb 设置为开机启动

systemctl enable mariadb

配置 php

安装完成之后,我们需要对它进行一些配置。首先,我们打开配置文件:

vim /etc/php.ini

打开文件后,我们找到 cgi.fix_pathinfo 并把它的值设置为 0

大概在 763 行

配置好 php.ini 文件之后,我们来配置 /etc/php-fpm.d/www.conf 文件

vim /etc/php-fpm.d/www.conf

第一处修改,将 listen = 127.0.0.1:9000 修改为如下:

listen = /var/run/php-fpm/php-fpm.sock (可保持不变,我设置为不变与/etc/nginx/nginx.conf中的fastcgi_pass参数设置的要一致)

然后找到下面两行,删掉前面的 ; 分号,取消注释。

listen.owner = nobody

listen.group = nobody

最后,我们找到下面两行

user = apache

group = apache

将 apache 换成 nginx,如下所示:

user = nginx

group = nginx

好,这样,我们就已经安装并且配置好了。下面我们可以启动了。

至此LNMP环境安装并配置完毕。

二、安装GOLANG环境

下载和解压Golang

wget https://storage.googleapis.com/golang/go1.8.linux-amd64.tar.gz

tar -zxvf go1.8.linux-amd64.tar.gz

mkdir -p gopackage

添加变量:

export GOROOT=/root/go

export GOPATH=/root/gopackage

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

然后保存后退出。

source /etc/profile

执行生效,然后再"go version"命令检查是否有版本提示。

三、安装MongoDB数据库

mkdir -p mongodb

cd mongodb

下载和解压MongoDB。

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.1.tgz

tar -zxvf mongodb-linux-x86_64-3.0.1.tgz

修改变量,在最后一行添加:

vim /etc/profile

export PATH=$PATH:/root/mongodb/mongodb-linux-x86_64-3.0.1/bin(与解压的文件名一致,或者自行更改文件名)

保存后退出,然后"source /etc/profile"执行生效。

创建存储文件夹(数据库目录):mkdir -p /data/db

启动MongoDB:mongod --bind_ip localhost --port 27017 --dbpath /data/db/ --logpath=/var/log/mongod.log --fork(此处的路径就是刚刚创建的,也可自行更改。)

停止服务,先获得PID号,ps -axu |grep mongo,然后kill掉。

开启。

为mongodb数据库添加用户

mongodb 初始是没有用户的, 这样很不安全, 所以要为leanote数据库新建一个用户来连接leanote数据库(注意, 并不是为leanote的表users里新建用户, 而是新建一个连接leanote数据库的用户, 类似mysql的root用户).

# 首先切换到leanote数据库下

命令行下输入mongo,直接进入数据库:

>use leanote;

>show databases;

# 添加一个用户root, 密码是abc123

>db.createUser({

user: 'root',

pwd: 'Brysjhhrhl@321',

roles: [{role: 'dbOwner', db: 'leanote'}]

});

>db.auth("root", "Brysjhhrhl@321"); # 测试下是否正确

1       # 返回1表示正确

>show collections

>db.collection.find(); # collection填入上一步查到的collection名称,例如db.users.find();

更改现有用户的密码:

> db.changeUserPassword('root','Brysjhhrhl321');   即可。

四、安装revel Web框架

yum install -y git

go get github.com/revel/cmd/revel

遇到问题,总是拒绝请求:

于是google,按照网上的教程:进入gopath的src目录

cd ~/go/src

创建目录:mkdir -p  golang.org/x/,进入刚创建的目录,

cd golang.org/x,克隆git库:git clone https://github.com/golang/sys.git

上面的方法不通,在另一个博客中看到,说是需要翻墙才可以,于是给centos7安装了shadowsocks,执行了下面的语句,倒是不显示报错之类的信息了,不清楚有没有安装成功,继续往下做,看看后面会不会有问题吧。

五、添加站点和导入数据库

添加站点

这里我们是用的LNMP环境,所以直接用对应的脚本快速添加站点,使得对应的网站目录。

下载解压源码

wget https://sourceforge.net/projects/leanote-bin/files/2.6.1/leanote-linux-amd64-v2.6.1.bin.tar.gz

tar -zxvf lean*.tar.gz解压之后将所有目录都放到/root下。

编辑 Leanote 配置文件 /root/leanote/conf/app.conf找到 app.secret= 这一项,任意修改一下,比如修改为如下内容:app.secret=dengdeng's_note。(我把原先的注释了)

然后导入leanote的初始化数据,

mongorestore -h localhost -d leanote --dir /root/leanote/mongodb_backup/leanote_install_data/

启动 Leanote 服务

nohup /bin/bash /root/leanote/bin/run.sh >> /var/log/leanote.log 2>&1 &(自己使用的时候直接到目录下run.sh或者在终端中输入/bin/bash /root/leanote/bin/run.sh就可以了,后面的意思是将启动服务的过程输出到日志文件中,不在前台显示过程。使用nohup是在终端关闭的情况下也可以运行服务。)

{%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

nohup 命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)

用途:不挂断地运行命令。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%}

使用浏览器可以直接登陆,端口号9000在没有修改的情况下是默认端口号:

使用客户端登录,打开windows客户端,显示:

点击下面的登录自建服务,分别在第一栏填入:http://192.168.0.106:9000 ,安装服务的机器的ip地址,第二栏填入:admin,第三栏填入:abc123,这里用的是默认的用户名和密码,可以根据自己的需要在配置文件里修改。这样就登录上了我们自建的云笔记服务了。

添加了mongo数据库的用户名后,将其添加到leanote配置文件中/root/leanote/conf/app.conf,重启leanote。

这时候又出现坑了,看到上面图片中显示,我设置的密码中有“@”字符,结果就是这个@有问题了,总是没办法正常开启leanote,搜索了一番是因为密码中带了“@”这个字符的关系。去掉就都ok了。https://github.com/leanote/leanote/issues/524

Linux VPS搭建蚂蚁笔记Leanote私有云笔记存储平台的更多相关文章

  1. 使用centos linux vps搭建jupyter notebook踩坑日记

    今天我尝试用vps搭建在线jupyter notebook网站时遇到了这样一个问题: [W 21:48:07.243 NotebookApp] SSL Error on 9 ('171.115.101 ...

  2. Leanote 蚂蚁笔记 云笔记

    Leanote 蚂蚁笔记  1.Leanote 数据存储是使用mongo存放的,所以需要安装mongo包 1.MongoDB 数据存储 Leanote 依赖 MongoDB 作为数据存储,下面开始安装 ...

  3. contos LINUX搭建LAMP笔记

    LINUX搭建LAMP笔记 .YUM:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于R ...

  4. Linux下为知笔记和蚂蚁笔记测评,推荐蚂蚁笔记!(非广告)

    本人由于学习Linux,需要一款可以在Linux平台下可以运行的一款软件,了解到为知笔记之笔记(下文以W代替)和蚂蚁笔记(下文以M代替)比较出名,由于某云和某象笔记在linux平台下没有对应的软件,所 ...

  5. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  6. 【Microsoft Azure 的1024种玩法】八. 基于Azure云端轻松打造一款好用的私有云笔记

    [简介] Leanote一款开源云笔记软件,它使用Go的Web框架revel和MongoDB开发完成的,其是目前为止发现的最有bigger的云笔记,它支持markdown输入,代码高亮,多人协作,笔记 ...

  7. VPS搭建VPN、BLOG

    FQ的正确姿势,你掌握了多少?老司机带你去墙外看看,来开车了坐稳! 购买VPS主机(服务端) 推荐性价比较高的VPS 搬瓦工https://bandwagonhost.com/ 上面的链接如果你打不开 ...

  8. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  9. linux 2.6 驱动笔记(一)

    本文作为linux 2.6 驱动笔记,记录环境搭建及linux基本内核模块编译加载. 环境搭建: 硬件:OK6410开发板 目标板操作系统:linux 2.6 交叉编译环境:windows 7 + v ...

随机推荐

  1. Jmeter性能测试实战教程系列-搭建分布式性能测试环境(五)

    Jmeter 是java 应用,对于CPU和内存的消耗比较大,因此,当需要模拟数以千计的并发用户时,使用单台机器模拟所有的并发用户就有些力不从心,甚至会引起JAVA内存溢出错误.为了让jmeter工具 ...

  2. iOS实现简单时钟效果

    实现的效果图如下 : 实现代码如下: #import "ViewController.h" //将旋转角度转换为弧度制#define angleToRadion(angle) (( ...

  3. yarn那些事儿

    本篇文章立足于mac. 一.安装yarn 1.通过homebrew brew update brew install yarn 2.通过脚本 curl -o- -L https://yarnpkg.c ...

  4. C#图片水印类

    这个是学习用的呃,主要看一下水印在修改图片中距左边的宽度和高度是杂弄的就哦客了. using System; using System.Collections.Generic; using Syste ...

  5. C#自带的Version判断版本号的大小

    Version version1 = new Version("1.0.0.25"); Version version2 = new Version("1.0.0.24& ...

  6. 用anaconda保证64位和32位的python共存

    conda info # 查看当前工作平台 set CONDA_FORCE_32BIT=1 # 切换到32位 set CONDA_FORCE_32BIT=0 # 切换到64位 conda create ...

  7. Extjs locked无效,使用enableLocking即可

    一.前言 在使用 extjs 做表格时,由于表格的列太多,我们需要设置一些固定列来查看数据,所以我们需要用到 locked 属性.普通加载 columns 的列是有效的,如果是动态加载的话,使用 lo ...

  8. MApp_ZUI_CTL_MarqueeTextWinProc字串滚动

    /////////////////////////////////////////////////////////////////////////////// /// global MApp_ZUI_ ...

  9. [转帖]TPC-C解析系列02_OceanBase如何做TPC-C测试

    TPC-C解析系列02_OceanBase如何做TPC-C测试 http://www.itpub.net/2019/10/08/3333/   导语: 蚂蚁金服自研数据库OceanBase登顶TPC- ...

  10. Web基础和servlet基础

    TomCat的目录结构 Bin:脚本目录(存放启动.关闭这些命令) Conf:存放配置文件的目录 Lib:存放jar包 Logs: 存放日志文件 Temp: 临时文件 Webapps: 项目发布目录 ...