记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

[X-UI] 三种版本 Docker 部署

[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代码
  1. curl -sSL https://get.docker.com/ | sh
运行你的容器
使用 vaxilu/x-ui 版本的
XML/HTML代码
  1. mkdir x-ui && cd x-ui
  2. docker run -itd --network=host \
  3.     -v $PWD/db/:/etc/x-ui/ \
  4.     -v $PWD/cert/:/root/cert/ \
  5.     --name x-ui --restart=unless-stopped \
  6.     enwaiax/x-ui
注意: 如果希望使用FranzKafkaYu/x-ui版本,仅需要讲上述镜像修改为 enwaiax/x-ui:alpha
使用 docker-compose 运行
XML/HTML代码
  1. mkdir x-ui && cd x-ui
  2. wget https://raw.githubusercontent.com//chasing66/x-ui/main/docker-compose.yml
  3. 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代码
  1. sudo apt update
  2. sudo apt install snapd nginx
  3. sudo snap install core
  4. sudo snap refresh core
  5. sudo snap install --classic certbot
  6. sudo ln -s /snap/bin/certbot /usr/bin/certbot
2、新建一个 nginx 配置
XML/HTML代码
  1. touch /etc/nginx/conf.d/xui.conf
增加以下配置,按照实际情况调整
XML/HTML代码
  1. server {
  2.     listen 80;
  3.     listen [::]:80;
  4.     server_name xui.example.com;
  5.  
  6.     location / {
  7.         proxy_redirect off;
  8.         proxy_pass http://127.0.0.1:54321;
  9.         proxy_http_version 1.1;
  10.         proxy_set_header Host $host;
  11.     }
  12.  
  13.     # 反代websocket
  14.      location /xray {
  15.          proxy_redirect off;
  16.          proxy_pass http://127.0.0.1:10001;
  17.          proxy_http_version 1.1;
  18.          proxy_set_header Upgrade $http_upgrade;
  19.          proxy_set_header Connection "upgrade";
  20.          proxy_set_header X-Real-IP $remote_addr;
  21.          proxy_set_header Host $http_host;
  22.          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  23.          proxy_set_header Y-Real-IP $realip_remote_addr;
  24.      }
  25. }
3、检查配置是否正常
XML/HTML代码
  1. nginx -t
4、申请证书,按照提示设置
XML/HTML代码
  1. certbot --nginx --agree-tos --no-eff-email --email xxxxx@example.com
5、刷新 nginx 配置生效
XML/HTML代码
  1. ngins -s reload
6、配置定时任务
XML/HTML代码
  1. sudo certbot renew --dry-run
附原版一键安装脚本:
FranzKafkaYu 魔改版:https://github.com/FranzKafkaYu/x-ui
Misaka-blog x-ui 魔改优化版:https://github.com/misaka-gh/x-ui
v2ray-agent(八合一脚本):https://github.com/mack-a/v2ray-agent

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):