Remnawave Node
Remnawave Node is a lightweight container with included Xray-core.
Remnawave Panel is not contains Xray-core inside, so you need to install Remnawave Node on a separate server in order to fully use Remnawave.
Step 1 - Creating project directory
mkdir /opt/remnanode && cd /opt/remnanode
Step 2 - Configure the .env file
nano .env
SSL_CERT
can be found in the main panel under the Nodes tab, Management page, after clicking the Create new node button. APP_PORT
can be customized, make sure it's not being used by other services.
APP_PORT=2222
SSL_CERT=CERT_FROM_MAIN_PANEL
Step 4 - Create docker-compose.yml file
nano docker-compose.yml
Paste the following content into the file:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
Step 5 - Start the containers
Start the containers by running the following command:
docker compose up -d && docker compose logs -f -t
Advanced usage
GeoSite files
You can mount additional geosite files into the /usr/local/share/xray/
directory in the container.
Do not mount the entire folder. Otherwise, you will overwrite the default Xray geosite files. Mount each file individually.
Add the following to the docker-compose.yml
file:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
volumes:
- './zapret.dat:/usr/local/share/xray/zapret.dat'
Usage in xray config:
"routing": {
"rules": [
// Other rules
{
"type": "field",
"domain": [
"ext:zapret.dat:zapret"
],
"inboundTag": [ // Optional
"VLESS_TCP_REALITY"
],
"outboundTag": "NOT_RU_OUTBOUND"
}
// Other rules
]
}
Log from Node
You can access logs from the node by mounting them to your host's file system.
You must set up log rotation, otherwise the logs will fill up your disk!
Add the following to the docker-compose.yml
file:
services:
remnanode:
container_name: remnanode
hostname: remnanode
image: remnawave/node:latest
restart: always
network_mode: host
env_file:
- .env
volumes:
- '/var/lib/remna:/var/lib/remna'
Usage in xray config:
"log": {
"error": "/var/lib/remna/error.log",
"access": "/var/lib/remna/access.log",
"loglevel": "warning"
}
Log rotation using logrotate:
/var/lib/remna/*.log {
size 50M
rotate 5
compress
missingok
notifempty
copytruncate
}