蚂蚁笔记平台搭建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蚂蚁笔记平台搭建相关的知识,希望对你有一定的参考价值。

一. centos6.5_X86_64最小化安装(这一步不多说,直接安装就可以,记得配置IP地址等信息。)

要求:不要使用系统默认的分区,采用以下分区格式:

技术分享

将默认的逻辑卷组重新配置:

1. 将root卷组大小分配缩小到20G,

2. home卷组重命名为data,直接使用剩下所有空间(会有提示最多可以分配多大空间),

3. 交换分区和boot默认不用动.

二. 对于centos6.5的优化

1.接下里关闭防火墙和selinux,用这个安全,但是麻烦,懒得配置,用起来还要占用一定资源。

#service iptables stop

#chkconfig iptables off

#sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/‘/etc/selinux/config 

或者直接修改selinux的config

#vim /etc/selinux/config

#yum install wget -y

#yum install vim -y

   

2.开机最简化:

  1. # LANG=en
  2. # for root in `chkconfig --list|grep 3:on|awk ‘{print $1}‘`;do chkconfig --level 3 $root off;done
  3.  
  4. # for root in crond network rsyslog sshd;do chkconfig --level 3 $root on;done  
  5.  
  6. # chkconfig --list|grep 3:on

3.安装更新

  1. #yum update -y?? 


4.安装nginx和MongoDB
安装nginx:

  1. # rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
  2. #yum install nginx -y ?? 

三、安装MongoDB:

配置yum源:

vi /etc/yum.repos.d/mongodb-org-3.4.repo

  1. [mongodb-org-3.4]
  2. name=MongoDB Repository
  3. baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
  4. gpgcheck=1
  5. enabled=1
  6. gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc ??



#yum instalgl mongodb-or
??

安装完成mongodb后我们要在/data下创建一个mongodb用来存储库文件的文件夹,并赋权限给mongodb

#mkdir -p /data/db/

#chown -Rf mongod:mongod /data/db

#chmod -Rf 755 /data/db

下面我们修改mongodb的配置文件,指定一个库存放地址

#vi /etc/mongod.conf

  1.   systemLog:
  2.   destination: file
  3.   logAppend: true
  4.   path: /var/log/mongodb/mongod.log
  5. # Where and how to store data.
  6.  storage:
  7.   dbPath: /data/db/        //我们需要指定库文件的存放目录
  8.   journal:
  9.     enabled: true
  10. # how the process runs
  11. processManagement:
  12.   fork: true  # fork and run in background
  13.   pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  14. # network interfaces
  15. net:
  16.   port: 27017
  17.   bindIp: 127.0.0.1 


启动mongod

#service mongod start

四、安装LeaNote

1.下载leanote

#cd /data

#wget https://sourceforge.net/projects/leanote-bin/files/2.4/leanote-linux-amd64-v2.4.bin.tar.gz

tar -zxvf leanote-linux-amd64-v2.4.bin.tar.gz 

2.导入初始数据

  1. mongorestore -h localhost -d leanote --dir /data/leanote/mongodb_backup/leanote_install_data/?

3.为mongodb添加用户

mognodb v2与v3创建用户命令有所不同

mongodb v2 创建用户如下:

  1. # 首先切换到leanote数据库下
  2. > use leanote;
  3. # 添加一个用户root, 密码是abc123
  4. > db.addUser("root", "abc123");
  5. {
  6.     "_id" : ObjectId("53688d1950cc1813efb9564c"),
  7.     "user" : "root",
  8.     "readOnly" : false,
  9.     "pwd" : "e014bfea4a9c3c27ab34e50bd1ef0955"
  10. }
  11. # 测试下是否正确
  12. > db.auth("root", "abc123");
  13. 1 # 返回1表示正确

mongodb v3 创建用户如下:

  1. # 首先切换到leanote数据库下
  2. > use leanote;
  3. # 添加一个用户root, 密码是abc123
  4. > db.createUser({
  5.     user: ‘root‘,
  6.     pwd: ‘abc123‘,
  7.     roles: [{role: ‘dbOwner‘, db: ‘leanote‘}]
  8. });
  9. # 测试下是否正确
  10. > db.auth("root", "abc123");
  11. 1 # 返回1表示正确

用户添加好后重新运行下mongodb, 并开启权限验证. 在mongod的终端按ctrl+c即可退出mongodb.

重新启动mongodb:

   

还要修改配置文件 : 修改 leanote/conf/app.conf:

  1. db.host=localhost
  2. db.port=27017
  3. db.dbname=leanote 
  4. db.username=root 
  5. db.password=abc123 

ok,我们需要测试下是否配置正确

bash /data/leanote/bin/run.sh 

如果提示错误,可能是下面的问题

1.0版之前(beta版)会遇到这个问题, 1.0采用revel-0.12, 所以不会遇到这个问题.

  1. Failed to load module.  Import of github.com/revel/revel/modules/testrunner failed: cannot find package "github.com/revel/revel/modules/testrunner" in any of:
  2.     /Users/life/app/go1.4/src/github.com/revel/revel/modules/testrunner (from $GOROOT)
  3.     /Users/life/Documents/Go/package_base/src/github.com/revel/revel/modules/testrunner (from $GOPATH)

revel 0.12 版配置不一样, 请修改app.conf

  1. module.static=github.com/revel/modules/static             
  2. module.testrunner=github.com/revel/modules/testrunner    

五、配置nginx代理

生成证书

  1. 可以通过以下步骤生成一个简单的证书:
  2. 首先,进入你想创建证书和私钥的目录,
  3. [[email protected] /]# mkdir -p /etc/nginx/cert
  4. [[email protected] /]# cd /etc/nginx/cert
  5. 创建服务器私钥,命令会让你输入一个口令:
  6. [[email protected] /]# openssl genrsa -des3 -out nginx.key 2048
  7. 创建签名请求的证书(CSR):
  8. [[email protected] /]# openssl req -new -key nginx.key -out nginx.csr
  9. 在加载SSL支持的Nginx并使用上述私钥时除去必须的口令:
  10. [[email protected] /] # cp nginx.key nginx.key.org
  11. [[email protected] /] # openssl rsa -in nginx.key.org -out nginx.key
  12. 最后标记证书使用上述私钥和CSR:
  13. [[email protected] /] # openssl x509 -req -days 365 -in nginx.csr -signkey nginx.key -out nginx.crt
  14. 配置nginx??

   

vim /etc/nginx/nginx.conf

添加

  1. upstream note.cloud.top {
  2.  server localhost:9000;
  3.  }

nginx.conf整个配置如下

  1. user nginx;
  2. worker_processes 1;
  3. error_log /var/log/nginx/error.log warn;
  4. pid /var/run/nginx.pid;
  5. events {
  6.  worker_connections 1024;
  7. }
  8. http {
  9.  include /etc/nginx/mime.types;
  10.  default_type application/octet-stream;
  11.  log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘
  12.  ‘$status $body_bytes_sent "$http_referer" ‘
  13.  ‘"$http_user_agent" "$http_x_forwarded_for"‘;
  14.  upstream note.cloud.top {     //我们添加的内容
  15.  server localhost:9000;
  16.  }                          //结束
  17.  access_log /var/log/nginx/access.log main;
  18. sendfile on;
  19.  #tcp_nopush on;
  20. keepalive_timeout 65;
  21. #gzip on;
  22. include /etc/nginx/conf.d/*.conf;
  23. }

# cd  /etc/nginx/conf.d

#mv default.conf default.conf.bak

#vim leanote.conf

  1. server {
  2.  listen 443;
  3.  server_name note.cloud.top;
  4.  ssl on;
  5.  ssl_certificate /etc/nginx/cert/nginx.crt;
  6.  ssl_certificate_key /etc/nginx/cert/nginx.key;
  7.  ssl_protocols SSLv3 SSLv2 TLSv1 TLSv1.1 TLSv1.2;
  8.  ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
  9.  ssl_prefer_server_ciphers on;
  10.  location / {
  11.  proxy_pass http://note.cloud.top;
  12.  proxy_set_header Host $host;
  13.  proxy_set_header X-Real-IP $remote_addr;
  14.  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  15.  }
  16.  error_page 404 /404.html;
  17.  error_page 500 502 503 504 /50x.html;
  18.  location = /50x.html {
  19.  root /usr/share/nginx/html;
  20.  }
  21. }

 #vim.leanote2.conf

  1. server {
  2. listen 80;
  3. server_name note.cloud.top;
  4. rewrite ^(.*)$ https://$host$1 permanent;
  5. location / {
  6. proxy_pass http://note.cloud.top;
  7. proxy_set_header Host $host;
  8. proxy_set_header X-Real-IP $remote_addr;
  9. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  10. }
  11. }

最后的配置:

#chkconfig mongod on

#chkconfig nginx on

#vim /etc/rc.d/rc.local  添加下面的一条命令

nohup bash /data/leanote/bin/run.sh &

这样开机的时候就能正常开机自启了,并且在后台不受影响,官方文档中给的命令关闭掉终端后就服务停止了

#reboot验证

--------------------------------------

文档中如有不正确的地方,请大家提出并且加以修改






以上是关于蚂蚁笔记平台搭建的主要内容,如果未能解决你的问题,请参考以下文章

读书笔记iOS-微信公众平台搭建与开发揭秘

大数据平台搭建笔记一:hadoop

搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器

迪文屏幕T5L平台学习笔记一:开发环境搭建注意事项

React-Native 学习笔记-Android开发平台-开发环境搭建

搭建个人XSS平台