CentOS 部署 NodeBB
0x00 前言
NodeBB 是基于 NodeJS 的开源 BBS 系统,可以搭配 redis 或 mongodb 数据库,本文中由于使用 NodeBB 配置中默认的 npm 安装会引起不知原因的 503:Too many open connections 错误,所以使用yarn手动安装
0x01 切换国内源并添加 mongodb 源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
备份 CentOS-Base.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
下载阿里云源到 yum 源配置目录并重命名为CentOS-Base.repo
yum -y install epel-release vim
安装 epel 源及 vim
vim /etc/yum.repos.d/mongodb-org-3.4.repo
创建 mongodb 源并编辑,添加如下内容
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
yum clean all
清空 yum 缓存
yum makecache
创建 yum 缓存,可以加快软件包索引速度,一般在安装软件包的时候会自动创建
yum update
更新软件包
0x02 科学上网
yum install python-pip
安装 pip
pip install shadowsocks
通过 pip 安装 ShadowSocks
vim /etc/shadowsocks.json
创建 shadowsocks 配置文件并编辑,目录和文件名随意,添加如下内容
{
"server" : "IP地址",
"server_port" : "端口",
"local_address" : "127.0.0.1",
"local_port" : "1080",
"password" : "密码",
"method" : "加密方法"
}
nohup sslocal -c /etc/shadowsocks.json >/dev/null 2>&1 &
后台运行 sslocal (ShadowSocks 的客户端),-c 后面填写配置文件位置,将该命令写入 /etc/rc.d/rc.local (旧版本或其他系统有可能在 /etc/rc.local,但要检查 /etc 下的是不是链接),并使用 chmod +x /etc/rc.local 即可使其开机自启
yum -y install privoxy
安装 privoxy
vim /etc/privoxy/config
编辑 privoxy 配置文件,在文件最底部添加如下代码,包括最后的"."
forward-socks5 / 127.0.0.1:1080 .
vim /root/.bash_profile
配置代理地址及端口,在文件最底部添加如下代码
export ftp_proxy=http://127.0.0.1:8118
export http_proxy=http://127.0.0.1:8118
export https_proxy=http://127.0.0.1:8118
source /root/.bash_profile
使配置生效
systemctl start privoxy
启动 privoxy
systemctl enable privoxy
允许 privoxy 开机自启
curl google.com
测试配置是否成功,如果成功则会输出类似如下代码
<HTML>
<HEAD>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE>
</HEAD>
<BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.com.hk/url?sa=p&hl=zh-CN&pref=hkredirect&pval=yes&q=http://www.google.com.hk/&ust=1379402837567135amp;usg=AFQjCNF3o7umf3jyJpNDPuF7KTibavE4aA">here</A>.
</BODY>
</HTML>
0x03 安装 mongodb 并配置用户
yum install mongodb-org
安装 mongodb
systemctl stop firewalld
停止 firewall 防火墙
systemctl disable firewalld
禁止 firewall 防火墙自启
systemctl start mongod
开启 mongodb
systemctl enable mongod
允许 mongodb 自启
mongo admin --eval "db.createUser({user:'root',pwd:'123456',roles:[{role:'root',db:'admin'}]});"
使用 admin 数据库并新建用户,用户名:root,密码:123456,权限:超级管理员
mongo nodebb --eval "db.createUser({user:'nodebb',pwd:'123456',roles:[{role:'readWrite',db:'nodebb'},{ role: 'clusterMonitor', db: 'admin' }]});"
使用 nodebb 数据库(如果不存在则新建数据库)并新建用户,用户名:nodebb,密码:123456,权限1:nodebb 数据库中可读写,权限2:admin 数据库中集群管理员
0x04 安装 Node 环境并配置 NodeBB
yum -y groupinstall "Development Tools"
安装开发工具包
yum -y install git ImageMagick
安装 git ImageMagick
curl https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
下载 nvm 源码并安装
source /root/.bash_profile
使 nvm 配置生效
export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
export NVM_IOJS_ORG_MIRROR=http://npm.taobao.org/mirrors/iojs
修改 nvm 镜像为淘宝镜像
nvm install --lts
安装最新的 LTS 版 NodeJS
yum -y install yarn
安装 yarn
mkdir -p /var/www/html
创建网站根目录
git clone -b v1.10.x https://github.com/NodeBB/NodeBB.git /var/www/html
下载 NodeBB 源码到网站根目录
cd /var/www/html/ | yarn install
NodeBB 目录执行 yarn install
/var/www/html/nodebb setup
执行 NodeBB 初始化设置
设置中域名要填访问域名,例如要在域名为 https://www.leviatan.cn 的80端口上访问 NodeBB,则域名填 https://www.leviatan.cn:80 ,后面不要加"/",否则在访问某些功能时会出现类似 https://www.leviatan.cn// 的情况
所有填写的配置会保存在 NodeBB 目录下的 config.json 中,随时可以修改
CentOS 部署 NodeBB的更多相关文章
- 跳过 centos部署 webpy的各种坑
用centos部署webpy发现的各种坑: 1.python 版本: 2.中文编码: 3.web模块路径: 在命令行里输入python,能import web,但是网站错误报告一直报告没有找到web模 ...
- 【Linux】Centos部署MySQL
将CentOS部署MySQL需要本地配置环境.本地编译MySQL,耗时较长的情况,优化为编译成型MySQL并打包,推送并按配置部署. 首先需要在一台机器配置好环境,搭个YUM源,并将所需要的包取出备用 ...
- Tigase XMPP Server在CentOS部署和配置
Tigase XMPP Server在CentOS部署与配置 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 以下讲述Tigase XMPP Server ...
- SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1
在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...
- 为什么使用centos部署服务器
这个是实验室同学面试的时候,面试官问的一个问题? 为什么选择centos系统,为什么centos系统用的比较多呢? 首先我们说下redhat红帽公司,它是全球最大的linux服务提供商,它的服务是最好 ...
- hadoop集群搭建--CentOS部署Hadoop服务
在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到环境为:VMware 12+CentOS6.4 hadoo ...
- CentOS部署yapi
转载自 https://www.linuxidc.com/Linux/2018-01/150513.htm 在mongoDB添加yum源时,源路径有修改,原文中的路径404不可用 一.准备工作 1.1 ...
- netcore项目在Centos部署:nohup和supervisor方式
Centos上部署netcore项目 1 准备工作 在Centos上部署netcore应用程序有两种常用方式:nohup和supervisord,这里简单演示一下这两种部署方式. 首先我们写一个简单的 ...
- centos部署yapi爬坑记
前言 这几天终于完成了为期三个月的公司某个demo版的项目,在这期间和公司的后台因为API的事怼过无数次了,'我的接口没问题,是你请求的方式不对吧!'.'一定是你请求的参数不对'......诸如此类问 ...
随机推荐
- mybatis pagehelper分页插件使用
使用过mybatis的人都知道,mybatis本身就很小且简单,sql写在xml里,统一管理和优化.缺点当然也有,比如我们使用过程中,要使用到分页,如果用最原始的方式的话,1.查询分页数据,2.获取分 ...
- 20165213周启航java学习总结
20165213周启航java学习总结 一.每周博客链接及二维码 预备作业一:我所期望的师生关系:http://www.cnblogs.com/rocedu/p/6255835.html#WEEK15 ...
- php 高效日志记录扩展seaslog 的使用
群里交流,听说seaslog不错,此文旨在记录使用. $ wget https://github.com/Neeke/SeasLog/archive/master.zip $ unzip master ...
- leveldb 学习记录(四) skiplist补与变长数字
在leveldb 学习记录(一) skiplist 已经将skiplist的插入 查找等操作流程用图示说明 这里在介绍 下skiplist的代码 里面有几个模块 template<typenam ...
- [uboot] (第三章)uboot流程——uboot-spl代码流程
http://blog.csdn.net/ooonebook/article/details/52957395 以下例子都以project X项目tiny210(s5pv210平台,armv7架构)为 ...
- ssh 配置免密失败
多数情况下,可以登录成功.但是也会出现配置不正确,导致失败的时候. 1.检查authorized_keys文件权限,并设置为700 chmod 700 authorized_keys 2.检查/etc ...
- 网页打印样式CSS
相信大多数的前端工程师都是处理显示屏上面的设计,用到最多的计量单位就是px,但是有些时候,我们难免也会有打印的需求,比如一个电商平台的“物流配送打印单”,“打印订单”等等可能都是需要从网友上打印出来的 ...
- SPI通信协议(非原创,转载他人,用于学习)
SPI通信协议:1.SPI主从模式:2.数据信号的相位与极性:3.数据帧的格式. 一.什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写.是 Moto ...
- Alpha 冲刺(1)
Alpha 冲刺 (1/10) Part.1 开篇 队名:彳艮彳亍团队 组长博客:戳我进入 作业博客:班级博客本次作业的链接 Part.2 成员汇报 组员1(组长)柯奇豪 过去两天完成了哪些任务 ...
- IntelliJ IDEA 2018.1.3 破解方法之一
IntelliJ IDEA 2018.1.3 破解方法之一 声明:如果资金充足请购买正版! NO1 下载安装IntelliJ IDEA 企业版 NO2 下载jar包 (1)下载地址:http://id ...