新服务器ubuntu16.04环境安装 宝塔nodejs版云转码

新服务器ubuntu16.04环境安装 宝塔nodejs版云转码

每次新装服务器都觉得很麻烦,这次就直接写一个教程,方便查询和处理。

更新内核版本v4.11.8

-name -a查看内核版本,如果不是v4.11.8就安装这个内核版本,这个内核版本配合BBR很好用,非常稳定,内核链接http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.8/ root登陆。

cd ~
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.8/linux-headers-4.11.8-041108_4.11.8-041108.201706290836_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.8/linux-headers-4.11.8-041108-generic_4.11.8-041108.201706290836_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.8/linux-image-4.11.8-041108-generic_4.11.8-041108.201706290836_amd64.deb
sudo dpkg -i *.deb
reboot

重启之后,uname -sr查看最新内核,看看是否安装成功。

安装bbr和魔改bbr

wget --no-check-certificate -qO 'BBR.sh' 'https://moeclub.org/attachment/LinuxShell/BBR.sh' && chmod a+x BBR.sh && bash BBR.sh -f
wget --no-check-certificate -qO 'BBR_POWERED.sh' 'https://moeclub.org/attachment/LinuxShell/BBR_POWERED.sh' && chmod a+x BBR_POWERED.sh && bash BBR_POWERED.sh

安装完毕。

设置时区

timedatectl set-timezone 'Asia/Shanghai'

然后date查看是否更改成功

安装宝塔

宝塔非常好用的环境安装和管理工具。

wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh

然后访问IP:8888进行设置

安装pm2+nodejs+npm+mongodb+nginx环境

宝塔后台软件管理即可安装,分别是pm2套件和mongodb还有nginx环境。

配置mongodb

ssh登陆进入命令行

mongo
use admin
use ffmpeg
db.createUser({user:"ffmpeg",pwd:"ffmpeg",roles:[{role:"readWrite",db:"ffmpeg"}]})
db.auth('ffmpeg','ffmpeg')
1

然后在宝塔mongodb配置里边更改配置文件,更改配置authorization那行更改。

authorization enabled

然后重启mongodb。

配置nginx

进入nginx文件夹vhost文件夹添加文件name.com

server {  
  server_name yourdomain.com;
  listen 80;
 
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:3000;
    proxy_redirect off;
  }
}

下载云转码

进入/wwwroot文件夹,然后克隆云转码源码,并且安装。

cd /www/wwwroot
git clone https://gitee.com/quazero/express-ffmpeg
cd express-ffmpeg
mkdir config
cd config
touch auth.js
vi auth.js
键入
module.exports = {
    user: "admin",
    password: "admin",
    db: "ffmpeg",
    dbuser: "ffmpeg",
    dbpassword: "ffmpeg"
};
cd ..
npm install
pm2 start bin/www -i 0

常规新装就在这搞定了,如果需要备份另外一个服务器内容请往下看。

设置node环境为开发环境

设置环境

export NODE_ENV=production

rsync远程备份

如果本来有一个旧的服务器需要将内容传输到新的服务器,如果是自己下载到本地,然后又上传,简直费时费力,利用rsync就可以方便的全部备份到新的服务器。假如旧的服务器主要内容在/www/express-ffmpeg/public/videos,新的服务器主要内容在/www/wwwroot/express-ffmpeg/public/videos

screen -S beifen
rsync -av root@111.111.111.111:/www/express-ffmpeg/public/videos/* /www/wwwroot/express-ffmpeg/public/videos

随后输入root密码就会开始传输,就算把SSH关闭了也没有关系,进入ssh输入

screen -r beifen

就会回到传输界面。