当前位置:首页 > 群晖专栏 > 运维部署 > 正文内容

Linux 服务器 docker 部署 AWTRIX 2.0 Server

admin5年前 (2020-01-20)运维部署1011

前言

之前帮一位朋友部署油管粉丝数显示牌的服务端.由于特殊需求,需要把AWTRIX服务器端部署到 VPS 服务器上.本文将介绍如何在 VPS 服务器上使用 docker 部署 AWTRIX 2.0 Server 服务器端.

同时推荐好友的 Youtube 频道,生活科技类Vlog,欢迎订阅,点赞,小铃铛.





本文已更新于 2020.06.28

重要说明


由于awtrix版本的更新,很多小伙伴,甚至Youtube网红小姐姐使用我的教程都翻车了,只能深表遗憾.其实博主早已使用新版镜像正常运行过一段时间,特重新编辑修改文本以供参考!


docker 部署

启动容器

docker run -d --name awtrix2 \
    --restart always \
    -p 7000:7000 \
    -p 7001:7001 \
    -v /root/awtrix2:/data \
    -e TZ=Asia/Shanghai \
    whyet/awtrix2

相关说明

/root/awtrix2为配置文件挂载的本地目录,正式使用后请随时备份此文件夹以便方便迁移.
7000Web访问端口,可根据情况修改或者参照下文做反向代理.
7001为连接端口,建议不要修改,防火墙需开放此端口.

Web访问

输入服务器公网 IP 加端口号即可访问 http://服务器IP:7000

配置域名

反向代理配置

  • 参照以下配置,替换 yourdomain.com 为你的域名.

  • 注意已经配置 301 跳转强制使用 HTTPS 协议.

  • 修改 SSL 证书路径

nginx 配置参考

upstream awtrix2 { 
    server 127.0.0.1:7000;
}

server {
    listen 80;
    server_name  yourdomain.com;
    return 301 https://yourdomain.com$request_uri;
}

server {
    listen 443 ssl;
    server_name  yourdomain.com;
    gzip on;    

    ssl_certificate /usr/local/nginx/conf/ssl/yourdomain.com.crt;
    ssl_certificate_key /usr/local/nginx/conf/ssl/yourdomain.com.key;

    location / {
        proxy_redirect off;
        proxy_pass http://awtrix2;

        proxy_set_header  Host                $http_host;
        proxy_set_header  X-Real-IP           $remote_addr;
        proxy_set_header  X-Forwarded-Ssl     on;
        proxy_set_header  X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header  X-Forwarded-Proto   $scheme;
        proxy_set_header  X-Frame-Options     SAMEORIGIN;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 86400;

        client_max_body_size        100m;
        client_body_buffer_size     128k;

        proxy_buffer_size           4k;
        proxy_buffers               4 32k;
        proxy_busy_buffers_size     64k;
        proxy_temp_file_write_size  64k;
    }
}

作废历史版本,仅作存档,请勿参考

项目简介

项目地址

镜像说明

网上现有的 docker 镜像都不太完美,于是根据网上常见的问题重新制作了 docker 镜像.

  • 原版项目awtrix.jar

  • 容器中更改为中国时区

  • 挂载目录,方便存储,迁移配置及插件等文件.


你也可以根据仓库中的Dockerfile自行构建镜像

docker部署

下载配置文件

进入项目仓库 stilleshan/awtrix-server 下载或者clone本仓库,复制awtrix文件夹到你指定的目录,建议存放至/root下.

启动容器

docker run -d --name=awtrix --restart=always -p 7000:7000 -p 7001:7001 -v /root/awtrix:/awtrix stilleshan/awtrix-server

开放端口

服务器或控制台开放7000和7001端口.

  • 7000端口为Web UI端口,如使用nginx反向代理,可无需开放.

  • 7001端口为Matrix Port,需开放此端口.

Web访问

输入服务器公网IP加端口号即可访问 http://服务器IP:7000

配置域名及访问密码

配置访问密码


由于AWTRIX服务器端无密码,任何知道Web地址的人都能修改相关参数,为保证安全,使用httpd-tools为nginx配置访问密码来保护服务器端.

安装HTTPD Tools工具包

yum -y install httpd-tools

生成密码文件

htpasswd -bdc FileName user password
修改 FileName user password ,例如 htpasswd -bdc 123 admin 123456 ,则在当前目录生成名为123的密码文件,网站访问时需要的账号密码为 admin 和 123456 .

nginx配置文件添加密码

auth_basic "Restricted";
auth_basic_user_file /xxx/xxx/xxx;
路径为生成的密码文件的路径

WebSocket支持

由于 AWTRIX 的 Web 中有依托于 WebSocket 的内容,所以需要配置nginx来支持WebSocket.插入以下代码到nginx配置文件中.

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

反向代理配置

结合上文提到的密码和WebSocket,配置反向代理需要注意以下几点:

  • 参照以下配置,替换yourdomain.com为你的域名.

  • 注意已经配置301跳转强制使用HTTPS协议.

  • 修改SSL证书路径

  • 配置上文生成的密码文件以保护Web的安全.

  • 配置WebSocket支持

Nginx示例

upstream awtrix { 
    server 127.0.0.1:7000;
}

server {
    listen 80;
    server_name  yourdomain.com;
    return 301 https://yourdomain.com$request_uri;
}

server {
    listen 443 ssl;
    server_name  yourdomain.com;
    gzip on;    

    auth_basic "Restricted";
    auth_basic_user_file /usr/local/nginx/conf/vhost/awtrix;

    ssl_certificate /usr/local/nginx/conf/ssl/yourdomain.com.crt;
    ssl_certificate_key /usr/local/nginx/conf/ssl/yourdomain.com.key;

    location / {
        proxy_redirect off;
        proxy_pass http://awtrix;

        proxy_set_header  Host                $http_host;
        proxy_set_header  X-Real-IP           $remote_addr;
        proxy_set_header  X-Forwarded-Ssl     on;
        proxy_set_header  X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header  X-Forwarded-Proto   $scheme;
        proxy_set_header  X-Frame-Options     SAMEORIGIN;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_read_timeout 86400;

        client_max_body_size        100m;
        client_body_buffer_size     128k;

        proxy_buffer_size           4k;
        proxy_buffers               4 32k;
        proxy_busy_buffers_size     64k;
        proxy_temp_file_write_size  64k;
    }
}

配置完成

访问你的域名输入账号密码即可





结语

更多相关信息请参考以下链接:

本站提供免费和付费的技术支持.你可以通过留言,邮件,QQ的方式来进行技术交流和免费咨询.同时也可以付费支持的方式获得相关的技术支持,项目部署配置等服务.具体相关详情请点击查看 技术支持页面

扫描二维码推送至手机访问。

版权声明:本文由梦魁网络资源站发布,如需转载请注明出处。

本文链接:https://family.monkui.com:39/?id=205

标签: 运维部署
分享给朋友:

相关文章

阿里云申请免费SSL证书教程

阿里云申请免费SSL证书教程

前言本文将详解如何为你的域名申请阿里云免费SSL证书,SSL证书能使你的网站支持https协议.申请流程登录阿里云控制台域名列表点击需要申请证书的域名免费开启SSL证书选择免费证书填写www申请申请成功选择下载适合你Web服务器的证书文件结...

腾讯云申请免费SSL证书教程

腾讯云申请免费SSL证书教程

前言本文将详解如何为你的域名申请腾讯云免费SSL证书,SSL证书能使你的网站支持https协议.申请流程登录腾讯云SSL证书管理购买证书选择域名型免费版(DV)填写域名,邮箱,证书备注名默认选择自动DNS验证如果你的域名不是在腾讯云购买和解...

Nginx设置301重定向到www和强制跳转https教程

Nginx设置301重定向到www和强制跳转https教程

前言本文将详解如何配置Nginx的conf文件来使域名跳转到www和强制跳转到https首先在建站之前,需要确认今后网站是使用类似ioiox.com一级域名,还是www.ioiox.com二级域名,根据域名长度,使用场景,域名视觉美观来决定...

CentOS使用OneIndex部署OneDrive免费网盘教程

CentOS使用OneIndex部署OneDrive免费网盘教程

前言本文将详解如何在CentOS上使用OneIndex程序部署OneDrive免费网盘OneIndex是一款不占服务器空间,不走服务器流量,直接列出OneDrive目录,文件在线查看和直接下载的Web源码OneIndex项目地址部署流程一、...

支持本地,腾讯,阿里,七牛,又拍云对象存储的Lsky Pro图床安装教程

支持本地,腾讯,阿里,七牛,又拍云对象存储的Lsky Pro图床安装教程

前言一直在寻找一款外观颜值高,部署简单,功能强大的图床程序.经过多达10款图床程序的测试,最终选择了Lsky Pro来作为正式环境的图床站点程序.Lsky Pro项目地址Lsky Pro的部署相对很多图床来说,环境需求简单,整个部署时间加上...

Docker部署ShareList分享OneDrive,Google Drive和WebDAV教程

Docker部署ShareList分享OneDrive,Google Drive和WebDAV教程

前言ShareList 是一个易用的网盘工具,支持快速挂载 GoogleDrive、OneDrive ,可通过插件扩展功能。ShareList项目地址目前网上有很多支持OneDrive的网盘工具,本站也曾介绍过,而ShareList最大的不...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。