Rat's

使用Docker快速安装express-ffmpeg云转码切片
说明:之前博主介绍过这个云转码和搭建教程,查看:云转码express-ffmpeg+CMS一体化系统安装教程,功能...
扫描右侧二维码阅读全文
02
2018/11

使用Docker快速安装express-ffmpeg云转码切片

说明:之前博主介绍过这个云转码和搭建教程,查看:云转码express-ffmpeg+CMS一体化系统安装教程,功能确实强大,不过还是有很多人搭建容易出点小问题,这里博主就整了个Docker镜像,适合小白使用。

更新

【2019.9.3】
重做镜像,新增部分变量参数,必要设置都给填了,使用更方便了。
【2018.11.4】
修复了上传错误等问题。

安装

注意:该安装方法不适用于OVZ等类似结构。内存太小的话,建议加点SwapSwap添加脚本→传送门。目前云转码为最新版本,如果作者有修复Bug和添加功能,请提醒博主更新下镜像。

说明:镜像测试了一下,上传和转码均正常,记得安装后,如果使用自带CMS播放,请在播放设置那里关掉强制QQ浏览器。

1、安装Docker

#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on

#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

2、运行镜像

#先看下面的参数详解,进行相关修改后,再将下面一起复制到ssh客户端运行
docker run --restart=always --name express-ffmpeg -d \
-p 3000:3000 \
-e localip=192.168.2.1 \
-e usr=moerats \
-e pass=moerats \
-e url=moerats \
-v ~/express-ffmpeg/mongodb:/data \
-v ~/express-ffmpeg/config:/express-ffmpeg/config \
-v ~/express-ffmpeg/movies:/express-ffmpeg/movies \
-v ~/express-ffmpeg/videos:/express-ffmpeg/public/videos \
-v ~/express-ffmpeg/uploads:/express-ffmpeg/public/uploads \
-v ~/express-ffmpeg/images:/express-ffmpeg/public/images \
moerats/express-ffmpeg

相关变量参数详解,自行修改:

serverip:服务器的ip地址
#用户名、密码,后台路径均自己修改,且路径不能为admin
usr:后台管理员用户名
pass:后台管理员密码
url:后台登录路径

最后访问地址是http://ip:3000,后台路径为http://ip:3000/moerats,路径参考自己修改的。

对于CentOS系统,还需要开启3000端口,开启如下:

#CentOS 6
iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7
firewall-cmd --zone=public --add-port=3000/tcp --permanent
firewall-cmd --reload

如果要用域名访问,就需要反代了。

相关目录

#数据库的目录
~/express-ffmpeg/mongodb
#配置文件目录
~/express-ffmpeg/config
#上传视频文件夹
~/express-ffmpeg/movies
#放切片文件、上传封面和VTT字幕文件夹
~/express-ffmpeg/videos
#上传文章图片的文件夹
~/express-ffmpeg/uploads
#上传图集的文件夹
~/express-ffmpeg/images

域名访问

反代可以用NginxApacheCaddy,这里只说宝塔和Caddy。如果你网站有宝塔,就可以使用宝塔进行反代,如果没有,建议使用第2种的Caddy反代,配置很快。

1、宝塔反代
先进入宝塔面板,然后点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:3000,再启用反向代理即可。至于启用SSL就不说了,直接在站点配置就可以启用。

2、Caddy反代
安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/iiiiiii1/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh
#备用地址
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh

配置Caddy

#以下全部内容是一个整体,请修改域名后一起复制到SSH运行!

#http访问,该配置不会自动签发SSL
echo "www.moerats.com {
 gzip
 proxy / 127.0.0.1:3000 {
    header_upstream Host {host}
    header_upstream X-Real-IP {remote}
    header_upstream X-Forwarded-For {remote}
    header_upstream X-Forwarded-Port {server_port}
    header_upstream X-Forwarded-Proto {scheme}
  }
}" > /usr/local/caddy/Caddyfile

#https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器
echo "www.moerats.com {
 gzip
 tls admin@moerats.com
 proxy / 127.0.0.1:3000 {
    header_upstream Host {host}
    header_upstream X-Real-IP {remote}
    header_upstream X-Forwarded-For {remote}
    header_upstream X-Forwarded-Port {server_port}
    header_upstream X-Forwarded-Proto {scheme}
  }
}" > /usr/local/caddy/Caddyfile

tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。

启动Caddy

/etc/init.d/caddy start

就可以打开域名进行访问了。

3、Nginx配置
如果你使用其它的,这里就大概发个Nginx反代配置,直接添加到配置文件即可。

#在配置文件里添加
location / {
     proxy_pass http://127.0.0.1:3000;
     proxy_redirect off;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

最后该Docker仅供学习交流,如果想正式使用,推荐该云转码的纯净版和高级版程序,均提供一键安装脚本,地址→传送门,看该文章后面介绍即可。

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2019 年 10 月 19 日 02 : 06 PM

发表评论

193 条评论

  1. 爱看动漫的小梁

    请问CentOS7 64位可以吗

    1. Rat's
      @爱看动漫的小梁

      基本上都可以。

  2. locer

    上传卡住了

    1. Rat's
      @locer

      上传看网速的

  3. ThinkVN

    waiting state encode video , tell me fix it.
    thanks

    1. Rat's
      @ThinkVN

      You just have to wait, the process is very slow, refresh every time to check it out.

      1. ThinkVN
        @Rat's

        my video 24Mb, and i wait 1 day, state still wating,
        does not seem to run

        1. Rat's
          @ThinkVN

          You check the transcoding settings, the number of screenshots cannot be 0, there are players and CMS settings, sometimes the transcoding status display is not completed, it is actually completed.

  4. 想想

    那个后台密码可以修改吗

    1. Rat's
      @想想

      可以的,等会我改下文章。

      1. 想想
        @Rat's

        好的,谢谢

        1. Rat's
          @想想

          教程已修改。

  5. 嘿嘿

    建议-v /express-ffmpeg/videos:/express-ffmpeg/public/videos 改成
    -v /express-ffmpeg:/express-ffmpeg

    然后可以通过 /express-ffmpeg/config/auth.js修改登录密码这些

    1. Rat's
      @嘿嘿

      意思是直接映射一个,就是整个目录?你可以试试行不行。

      1. 嘿嘿
        @Rat's

        恩恩 试了可以的 修改完了应该是要重启一下docker的

        博主可以试试Portainer这个管理docker 挺方便的 填好参数一键就可以了

        1. Rat's
          @嘿嘿

          我晚上改下教程,就按你说的来。Portainer我了解下先。

  6. slepoh

    为什么我按照步骤按照不成功?CentOS7.5版本

    1. Rat's
      @slepoh

      docker安装成功了?防火墙打开了没

      1. slepoh
        @Rat's

        安装过程有点慢,docker像是安装成功,用的宝塔

        1. Rat's
          @slepoh

          快慢与网络有关的。

          1. slepoh
            @Rat's
            该评论仅登录用户及评论双方可见
            1. slepoh
              @slepoh
              该评论仅登录用户及评论双方可见
              1. Rat's
                @slepoh

                这个是权限问题,建议你换个系统试试。

  7. 天城

    播放器右键的信息怎么修改啊?

    1. Rat's
      @天城

      不知道,没研究过使用。

      1. 天城
        @Rat's

        一点列队转码就502,头疼的软件

        1. Rat's
          @天城

          我也头疼,不会玩这个,还要各种设置,不然会出问题。

          1. 天城
            @Rat's

            转码会中断 我也是醉了

            1. Rat's
              @天城

              估计太耗资源跪了?

              1. 天城
                @Rat's

                20核心e5 256G内存啊 独立服务器

                1. 涵涵
                  @天城

                  妈的这么有钱的吗?

                  1. Rat's
                    @涵涵

                    别个是土豪,一大堆独服。

  8. 想想

    你好32ubuntn能安装吗

    1. 想想
      @想想

      好像不行,求解

      1. Rat's
        @想想

        理论上都行。

  9. 蜗居

    cms 里面的视频显示加载失败

  10. 蜗居

    刚才安装好,提示未启动cms 重启后,怎么弄

    1. Rat's
      @蜗居

      需要先去后台开启cms。

      1. 蜗居
        @Rat's

        我点电脑重启了,然后就进不去了

        1. Rat's
          @蜗居

          是电脑还是服务器?服务器的话试试docker start express-ffmpeg。

          1. 想想
            @Rat's

            32位能用

          2. 蜗居
            @Rat's

            可以了,为什么用一会儿就不行了,感觉那个服务器停止了

            1. Rat's
              @蜗居

              有没有加点虚拟内存?