mirror of
https://github.com/XrayR-project/XrayR-release.git
synced 2026-04-03 10:30:49 +08:00
119 lines
5.3 KiB
Markdown
119 lines
5.3 KiB
Markdown
|
|
# XRayR
|
|||
|
|
A Xray backend framework that can easily support many panels.
|
|||
|
|
|
|||
|
|
一个基于Xray的后端框架,支持V2ay,Trojan,Shadowsocks协议,极易扩展,支持多面板对接
|
|||
|
|
|
|||
|
|
Find the source code here: [XrayR-project/XrayR](https://github.com/XrayR-project/XrayR)
|
|||
|
|
|
|||
|
|
# 详细使用教程
|
|||
|
|
|
|||
|
|
[教程](https://crackair.gitbook.io/xrayr-project/)
|
|||
|
|
|
|||
|
|
# 一键安装
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
bash <(curl -Ls https://raw.githubusercontent.com/XrayR-project/XrayR-release/master/install.sh)
|
|||
|
|
```
|
|||
|
|
# Docker 安装
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker pull crackair/xrayr:latest && docker run --restart=always --name xrayr -d -v ${PATH_TO_CONFIG}/config.yml:/etc/XrayR/config.yml --network=host crackair/xrayr:latest
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
# Docker compose 安装
|
|||
|
|
0. 安装docker-compose:
|
|||
|
|
```
|
|||
|
|
curl -fsSL https://get.docker.com | bash -s docker
|
|||
|
|
curl -L "https://github.com/docker/compose/releases/download/1.26.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
|||
|
|
chmod +x /usr/local/bin/docker-compose
|
|||
|
|
```
|
|||
|
|
1. `git clone https://github.com/XrayR-project/XrayR-release`
|
|||
|
|
2. `cd XrayR-release`
|
|||
|
|
3. 编辑config。
|
|||
|
|
配置文件基本格式如下,Nodes下可以同时添加多个面板,多个节点配置信息,只需添加相同格式的Nodes item即可。
|
|||
|
|
4. 启动docker:`docker-compose up -d`
|
|||
|
|
```
|
|||
|
|
Log:
|
|||
|
|
Level: none # Log level: none, error, warning, info, debug
|
|||
|
|
AccessPath: # /etc/XrayR/access.Log
|
|||
|
|
ErrorPath: # /etc/XrayR/error.log
|
|||
|
|
DnsConfigPath: # /etc/XrayR/dns.json Path to dns config
|
|||
|
|
ConnetionConfig:
|
|||
|
|
Handshake: 4 # Handshake time limit, Second
|
|||
|
|
ConnIdle: 10 # Connection idle time limit, Second
|
|||
|
|
UplinkOnly: 2 # Time limit when the connection downstream is closed, Second
|
|||
|
|
DownlinkOnly: 4 # Time limit when the connection is closed after the uplink is closed, Second
|
|||
|
|
BufferSize: 64 # The internal cache size of each connection, kB
|
|||
|
|
Nodes:
|
|||
|
|
-
|
|||
|
|
PanelType: "SSpanel" # Panel type: SSpanel, V2board, PMpanel
|
|||
|
|
ApiConfig:
|
|||
|
|
ApiHost: "http://127.0.0.1:667"
|
|||
|
|
ApiKey: "123"
|
|||
|
|
NodeID: 41
|
|||
|
|
NodeType: V2ray # Node type: V2ray, Shadowsocks, Trojan
|
|||
|
|
Timeout: 30 # Timeout for the api request
|
|||
|
|
EnableVless: false # Enable Vless for V2ray Type
|
|||
|
|
EnableXTLS: false # Enable XTLS for V2ray and Trojan
|
|||
|
|
SpeedLimit: 0 # Mbps, Local settings will replace remote settings, 0 means disable
|
|||
|
|
DeviceLimit: 0 # Local settings will replace remote settings, 0 means disable
|
|||
|
|
RuleListPath: # /etc/XrayR/rulelist Path to local rulelist file
|
|||
|
|
ControllerConfig:
|
|||
|
|
ListenIP: 0.0.0.0 # IP address you want to listen
|
|||
|
|
SendIP: 0.0.0.0 # IP address you want to send pacakage
|
|||
|
|
UpdatePeriodic: 60 # Time to update the nodeinfo, how many sec.
|
|||
|
|
EnableDNS: false # Use custom DNS config, Please ensure that you set the dns.json well
|
|||
|
|
DNSType: AsIs # AsIs, UseIP, UseIPv4, UseIPv6, DNS strategy
|
|||
|
|
EnableProxyProtocol: false # Only works for WebSocket and TCP
|
|||
|
|
EnableFallback: false # Only support for Trojan and Vless
|
|||
|
|
FallBackConfigs: # Support multiple fallbacks
|
|||
|
|
-
|
|||
|
|
SNI: # TLS SNI(Server Name Indication), Empty for any
|
|||
|
|
Path: # HTTP PATH, Empty for any
|
|||
|
|
Dest: 80 # Required, Destination of fallback, check https://xtls.github.io/config/fallback/ for details.
|
|||
|
|
ProxyProtocolVer: 0 # Send PROXY protocol version, 0 for dsable
|
|||
|
|
CertConfig:
|
|||
|
|
CertMode: dns # Option about how to get certificate: none, file, http, dns. Choose "none" will forcedly disable the tls config.
|
|||
|
|
CertDomain: "node1.test.com" # Domain to cert
|
|||
|
|
CertFile: /etc/XrayR/cert/node1.test.com.cert # Provided if the CertMode is file
|
|||
|
|
KeyFile: /etc/XrayR/cert/node1.test.com.key
|
|||
|
|
Provider: alidns # DNS cert provider, Get the full support list here: https://go-acme.github.io/lego/dns/
|
|||
|
|
Email: test@me.com
|
|||
|
|
DNSEnv: # DNS ENV option used by DNS provider
|
|||
|
|
ALICLOUD_ACCESS_KEY: aaa
|
|||
|
|
ALICLOUD_SECRET_KEY: bbb
|
|||
|
|
# -
|
|||
|
|
# PanelType: "V2board" # Panel type: SSpanel, V2board
|
|||
|
|
# ApiConfig:
|
|||
|
|
# ApiHost: "http://127.0.0.1:668"
|
|||
|
|
# ApiKey: "123"
|
|||
|
|
# NodeID: 4
|
|||
|
|
# NodeType: Shadowsocks # Node type: V2ray, Shadowsocks, Trojan
|
|||
|
|
# Timeout: 30 # Timeout for the api request
|
|||
|
|
# EnableVless: false # Enable Vless for V2ray Type
|
|||
|
|
# EnableXTLS: false # Enable XTLS for V2ray and Trojan
|
|||
|
|
# SpeedLimit: 0 # Mbps, Local settings will replace remote settings
|
|||
|
|
# DeviceLimit: 0 # Local settings will replace remote settings
|
|||
|
|
# ControllerConfig:
|
|||
|
|
# ListenIP: 0.0.0.0 # IP address you want to listen
|
|||
|
|
# UpdatePeriodic: 10 # Time to update the nodeinfo, how many sec.
|
|||
|
|
# EnableDNS: false # Use custom DNS config, Please ensure that you set the dns.json well
|
|||
|
|
# CertConfig:
|
|||
|
|
# CertMode: dns # Option about how to get certificate: none, file, http, dns
|
|||
|
|
# CertDomain: "node1.test.com" # Domain to cert
|
|||
|
|
# CertFile: /etc/XrayR/cert/node1.test.com.cert # Provided if the CertMode is file
|
|||
|
|
# KeyFile: /etc/XrayR/cert/node1.test.com.pem
|
|||
|
|
# Provider: alidns # DNS cert provider, Get the full support list here: https://go-acme.github.io/lego/dns/
|
|||
|
|
# Email: test@me.com
|
|||
|
|
# DNSEnv: # DNS ENV option used by DNS provider
|
|||
|
|
# ALICLOUD_ACCESS_KEY: aaa
|
|||
|
|
# ALICLOUD_SECRET_KEY: bbb
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Docker compose升级
|
|||
|
|
在docker-compose.yml目录下执行:
|
|||
|
|
```
|
|||
|
|
docker-compose pull
|
|||
|
|
docker-compose up -d
|
|||
|
|
```
|