一、基础环境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. Win10下载安装PostgreSQL 11.1

    下载地址:https://get.enterprisedb.com/postgresql/postgresql-11.1-1-windows-x64.exe Installation Director ...

  2. 【Leetcode_easy】993. Cousins in Binary Tree

    problem 993. Cousins in Binary Tree 参考 1. Leetcode_easy_993. Cousins in Binary Tree; 完

  3. 使用jsPlumb插件实现动态连线功能

    这周去看了两天的羽毛球亚锦赛,工作有提前晚上加班做一些,但是技术文章却拉下了. 这段时间一直在寻找可以实现前端元素动态连线的功能,找了好几个库,考虑过用d3或者原生svg和canvas来实现,最后和同 ...

  4. 查看Mysql是否开启binlog

    show variables like 'log_bin';

  5. Properties类使用详解

    Java Properties类使用详解   概述 Properties 继承于 Hashtable.表示一个持久的属性集,属性列表以key-value的形式存在,key和value都是字符串. Pr ...

  6. 获取可视区域高度赋值给div(解决document.body.clientHeight的返回值为0的问题)

    设置html,body{height:100%} 在使用html5文档类型的时候, 设置了html body的高度100%之后,两个浏览器就都能获取document.body.clientHeight ...

  7. 使用keepalived实现kubenetes apiserver高可用

    # 安装 nginx yum install nginx -y # 配置nginx4层代理 /etc/nginx/nginx.conf stream { upstream kube-apiserver ...

  8. 利用Python进行数据分析 第8章 数据规整:聚合、合并和重塑.md

    学习时间:2019/11/03 周日晚上23点半开始,计划1110学完 学习目标:Page218-249,共32页:目标6天学完(按每页20min.每天1小时/每天3页,需10天) 实际反馈:实际XX ...

  9. 嵌入式Linux学习笔记之第二阶段---文件I/O

    1.文件IO的四个函数 一些术语: 不带缓冲的I/O: 每个read和write都调用内核中的一个系统调用. 文件描述符: 一个非负整数,对内核而言,所以打开的文件都通过文件描述符引用. ①打开或创建 ...

  10. 二十二、DMA驱动

    一.DMA简介 DMA(Direct Memory Access,直接内存存取),DMA传输将数据从一个地址空间复制到另外一个地址空间.传输过程由DMA控制器独立完成,它并没有拖延CPU的工作,可以让 ...