<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/ DTD/wml_1.1.xml">

<wml>
<head>
<meta http-equiv="cache-control" content="max-age=180,private" />
</head>
<card title="[X-UI] 三种版本 Docker 部署">
<p>
作者:<a href="index.php?action=showuser&amp;userid=1&amp;hash=">admin</a><br />时间:2022-12-02 14:19<br />分类:<a href="index.php?action=list&amp;cid=3&amp;hash=">电脑技术</a><br />内容:
[X-UI] 三种版本 Docker 部署



可以通过使用不同的 tag 来使用不同作者的镜像


    
        
             
            Tag
            amd64
            arm64
            armv7
            armv6
            s390x
        
    
    
        
            vaxilu/x-ui

            latest

            ✅

            ✅

            ✅

            ✅

            ✅

        
        
            FranzKafkaYu/x-ui

            alpha

            ✅

            ✅

            ❌

            ❌

            ✅

        
        
            X-UI-Unofficial/x-ui

            beta

            ✅

            ✅

            ❌

            ❌

            ✅

        
    

为什么要使用docker

    一致性且能保证环境隔离

    快速部署

    保证灵活性和扩展性

    更好的可移植性

    低成本

    方便控制版本

    安全


对于 x-ui，如果使用 docker



    无需关心原宿主机的系统，架构，版本

    不会破坏原系统，如果不想使用，很方便就能完全干净的卸载

    部署方便且容易升级


如何使用


 


前提：安装好 docker，使用官方一键脚本：



XML/HTML代码


    curl -sSL https://get.docker.com/ | sh





运行你的容器


使用 vaxilu/x-ui 版本的






XML/HTML代码


    mkdir x-ui &amp;&amp; cd x-ui

    docker run -itd --network=host \

        -v $PWD/db/:/etc/x-ui/ \

        -v $PWD/cert/:/root/cert/ \

        --name x-ui --restart=unless-stopped \

        enwaiax/x-ui




注意: 如果希望使用FranzKafkaYu/x-ui版本，仅需要讲上述镜像修改为 enwaiax/x-ui:alpha


使用 docker-compose 运行


XML/HTML代码


    mkdir x-ui &amp;&amp; cd x-ui

    wget https://raw.githubusercontent.com//chasing66/x-ui/main/docker-compose.yml

    docker compose up -d





如何启用 ssl


假设你的 x-ui 端口是 54321


假设你的 IP 是 10.10.10.10


假设你的域名是 xui.example.com，且已经做好 A 记录解析


假设你使用的是 Debian 10+或者 Ubuntu 18+的系统


假设你的邮箱是 xxxx@example.com




 




步骤如下


1、安装必要软件






XML/HTML代码


    sudo apt update

    sudo apt install snapd nginx

    sudo snap install core

    sudo snap refresh core

    sudo snap install --classic certbot

    sudo ln -s /snap/bin/certbot /usr/bin/certbot




2、新建一个 nginx 配置




XML/HTML代码


    touch /etc/nginx/conf.d/xui.conf




增加以下配置，按照实际情况调整




XML/HTML代码


    server {

        listen 80;

        listen [::]:80;

        server_name xui.example.com;

     

        location / {

            proxy_redirect off;

            proxy_pass http://127.0.0.1:54321;

            proxy_http_version 1.1;

            proxy_set_header Host $host;

        }

     

        # 反代websocket

         location /xray {

             proxy_redirect off;

             proxy_pass http://127.0.0.1:10001;

             proxy_http_version 1.1;

             proxy_set_header Upgrade $http_upgrade;

             proxy_set_header Connection &quot;upgrade&quot;;

             proxy_set_header X-Real-IP $remote_addr;

             proxy_set_header Host $http_host;

             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

             proxy_set_header Y-Real-IP $realip_remote_addr;

         }

    }




3、检查配置是否正常




XML/HTML代码


    nginx -t




4、申请证书，按照提示设置




XML/HTML代码


    certbot --nginx --agree-tos --no-eff-email --email xxxxx@example.com




5、刷新 nginx 配置生效




XML/HTML代码


    ngins -s reload




6、配置定时任务




XML/HTML代码


    sudo certbot renew --dry-run






附原版一键安装脚本：

X-ui 原作：https://github.com/vaxilu/x-ui

FranzKafkaYu 魔改版：https://github.com/FranzKafkaYu/x-ui

Misaka-blog x-ui 魔改优化版：https://github.com/misaka-gh/x-ui

伊朗的x-ui：https://github.com/MHSanaei/3x-ui

v2ray-agent（八合一脚本）：https://github.com/mack-a/v2ray-agent

3X-UI汉化优化版（推荐）：https://github.com/xeefei/3x-ui


</p><p>
<a href="index.php?action=login&amp;hash=">立即登陆发表评论</a><br />
</p>
<p><a href="index.php?action=list&amp;hash=">返回日志列表</a><br /><a href="index.php?action=index&amp;hash=">返回主页</a></p>
</card>
</wml>
