V2RayA 是一个易用而强大的跨平台 V2Ray 客户端,通过 Docker 部署 V2RayA,可以方便地进行容器化管理,下面分别介绍使用 Docker 和 Docker Compose 部署 V2RayA 的完整步骤。 ### 一、使用 Docker 部署 * **安装 Docker** :若服务器尚未安装 Docker,可参照[官方教程](https://docs.docker.com/engine/install/)进行安装。以Ubuntu系统为例,执行以下命令安装 : * ``` sudo apt-get update sudo apt-get install -y docker.io ``` * **拉取 V2RayA 镜像** :执行命令 `docker pull mzz2017/v2raya`,从 Docker Hub 获取官方的 V2RayA 镜像。 * **运行 V2RayA 容器** :根据是否使用全局透明代理,运行命令有所不同: * **全局透明代理方式** :此方式下宿主机和 Docker 容器都会走代理,命令如下: ``` docker run -d \ --name v2raya \ --network=host \ -e V2RAYA_ADDRESS=0.0.0.0:2017 \ -v /lib/modules:/lib/modules:ro \ -v /etc/resolv.conf:/etc/resolv.conf \ -v /your/path/v2raya:/etc/v2raya \ --restart=always \ --privileged \ mzz2017/v2raya ``` * **非全局透明代理方式** :若不需要全局透明代理,使用以下命令: ``` docker run -d \ --name v2raya \ -p 2017:2017 \ -p 20170-20172:20170-20172 \ -e V2RAYA_ADDRESS=0.0.0.0:0217 \ -v /your/path/v2raya:/etc/v2raya \ --restart=always \ --privileged \ mzz2017/v2raya ``` * **查看容器运行状态** :运行 `docker ps`命令查看 V2RayA 容器是否成功运行,若看到容器状态为“Up”,则表示运行正常。 * **查看日志** :实时查看 V2RayA 的日志输出,可执行命令 `docker logs -f v2raya`,以便于排查问题和了解运行情况。 ### 二、使用 Docker Compose 部署 * **安装 Docker Compose** :如果未安装 Docker Compose,可使用以下命令进行安装: ``` sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*?(?=")')/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` * **创建项目目录与配置文件** :新建一个目录用于存放 V2RayA 的数据和配置文件,例如 `mkdir -p /your/path/v2raya/data`。然后在该目录下创建 `docker-compose.yml`文件。 * **全局透明代理方式** :此方式下宿主机和 Docker 容器都会走代理,内容如下: ``` services: v2raya: image: mzz2017/v2raya restart: always privileged: true network_mode: host container_name: v2raya environment: V2RAYA_LOG_FILE: /tmp/v2raya.log V2RAYA_V2RAY_BIN: /usr/local/bin/xray V2RAYA_NFTABLES_SUPPORT: off IPTABLES_MODE: legacy volumes: - /lib/modules:/lib/modules:ro - /etc/resolv.conf:/etc/resolv.conf - $PWD/data:/etc/v2raya - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ``` * **非全局透明代理方式** :若不需要全局透明代理,使用以下命令: ``` services: v2raya: image: mzz2017/v2raya restart: always privileged: true network_mode: bridge container_name: v2raya environment: V2RAYA_LOG_FILE: /tmp/v2raya.log V2RAYA_V2RAY_BIN: /usr/local/bin/xray V2RAYA_NFTABLES_SUPPORT: off IPTABLES_MODE: legacy volumes: - /lib/modules:/lib/modules:ro - /etc/resolv.conf:/etc/resolv.conf - $PWD/data:/etc/v2raya - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - 2017:2017 - 20170-20172:20170-20172 ``` * **启动服务** :在 `docker-compose.yml`文件所在目录下,执行命令 `docker-compose up -d`,Docker Compose 将会根据配置文件自动拉取镜像并启动 V2RayA 容器[^3^]。 * **查看服务状态和日志** :通过命令 `docker-compose ps`查看服务的运行状态,使用 `docker-compose logs`查看服务的日志输出。 ### 三、配置反向代理(非必须) * 为了进一步加强安全防护,因此加入一层反向代理。这里使用nginx。 ``` server { listen 443 ssl; listen [::]:443 ssl; server_name xxx.xxx.com; charset utf-8; access_log off; ssl_certificate /home/cert/fullchain.cer; ssl_certificate_key /home/cert/xxxx.com.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { proxy_pass http://localhost:2017; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } server { listen 80; listen [::]:80; server_name xxx.xxx.com; # 核心代码 rewrite ^(.*)$ https://${server_name}$1 permanent; } ``` ### 四、访问与配置 V2RayA * **访问管理界面** :无论是通过 Docker 还是 Docker Compose 部署,在容器成功运行后,打开浏览器,访问 `https://localhost:2017`,即可进入 V2RayA 的管理界面。若是在远程服务器上部署,则将 `localhost`替换为服务器的 IP 地址。 * **初始配置** :首次访问时需要设置管理员账号和密码。登录后,可以添加或导入节点,配置代理模式等参数,以满足不同的网络代理需求。 ### 五、注意事项 * **目录挂载** :在 Docker 和 Docker Compose 的配置中,都涉及到将宿主机的目录挂载到容器内。这样可以确保 V2RayA 的配置文件和数据在容器重启或更新后能够得以保留。 * **版本更新** :当有新的 V2RayA 版本发布时,可以先执行 `docker pull mzz2017/v2raya`更新镜像,然后再重新运行容器或执行 `docker-compose up -d`更新服务,以获取最新的功能和安全更新。 * **防火墙设置** :确保服务器的防火墙规则允许访问 V2RayA 所使用的端口,如 2017 端口。 Loading... V2RayA 是一个易用而强大的跨平台 V2Ray 客户端,通过 Docker 部署 V2RayA,可以方便地进行容器化管理,下面分别介绍使用 Docker 和 Docker Compose 部署 V2RayA 的完整步骤。 ### 一、使用 Docker 部署 * **安装 Docker** :若服务器尚未安装 Docker,可参照[官方教程](https://docs.docker.com/engine/install/)进行安装。以Ubuntu系统为例,执行以下命令安装 : * ``` sudo apt-get update sudo apt-get install -y docker.io ``` * **拉取 V2RayA 镜像** :执行命令 `docker pull mzz2017/v2raya`,从 Docker Hub 获取官方的 V2RayA 镜像。 * **运行 V2RayA 容器** :根据是否使用全局透明代理,运行命令有所不同: * **全局透明代理方式** :此方式下宿主机和 Docker 容器都会走代理,命令如下: ``` docker run -d \ --name v2raya \ --network=host \ -e V2RAYA_ADDRESS=0.0.0.0:2017 \ -v /lib/modules:/lib/modules:ro \ -v /etc/resolv.conf:/etc/resolv.conf \ -v /your/path/v2raya:/etc/v2raya \ --restart=always \ --privileged \ mzz2017/v2raya ``` * **非全局透明代理方式** :若不需要全局透明代理,使用以下命令: ``` docker run -d \ --name v2raya \ -p 2017:2017 \ -p 20170-20172:20170-20172 \ -e V2RAYA_ADDRESS=0.0.0.0:0217 \ -v /your/path/v2raya:/etc/v2raya \ --restart=always \ --privileged \ mzz2017/v2raya ``` * **查看容器运行状态** :运行 `docker ps`命令查看 V2RayA 容器是否成功运行,若看到容器状态为“Up”,则表示运行正常。 * **查看日志** :实时查看 V2RayA 的日志输出,可执行命令 `docker logs -f v2raya`,以便于排查问题和了解运行情况。 ### 二、使用 Docker Compose 部署 * **安装 Docker Compose** :如果未安装 Docker Compose,可使用以下命令进行安装: ``` sudo curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*?(?=")')/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` * **创建项目目录与配置文件** :新建一个目录用于存放 V2RayA 的数据和配置文件,例如 `mkdir -p /your/path/v2raya/data`。然后在该目录下创建 `docker-compose.yml`文件。 * **全局透明代理方式** :此方式下宿主机和 Docker 容器都会走代理,内容如下: ``` services: v2raya: image: mzz2017/v2raya restart: always privileged: true network_mode: host container_name: v2raya environment: V2RAYA_LOG_FILE: /tmp/v2raya.log V2RAYA_V2RAY_BIN: /usr/local/bin/xray V2RAYA_NFTABLES_SUPPORT: off IPTABLES_MODE: legacy volumes: - /lib/modules:/lib/modules:ro - /etc/resolv.conf:/etc/resolv.conf - $PWD/data:/etc/v2raya - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ``` * **非全局透明代理方式** :若不需要全局透明代理,使用以下命令: ``` services: v2raya: image: mzz2017/v2raya restart: always privileged: true network_mode: bridge container_name: v2raya environment: V2RAYA_LOG_FILE: /tmp/v2raya.log V2RAYA_V2RAY_BIN: /usr/local/bin/xray V2RAYA_NFTABLES_SUPPORT: off IPTABLES_MODE: legacy volumes: - /lib/modules:/lib/modules:ro - /etc/resolv.conf:/etc/resolv.conf - $PWD/data:/etc/v2raya - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - 2017:2017 - 20170-20172:20170-20172 ``` * **启动服务** :在 `docker-compose.yml`文件所在目录下,执行命令 `docker-compose up -d`,Docker Compose 将会根据配置文件自动拉取镜像并启动 V2RayA 容器[^3^]。 * **查看服务状态和日志** :通过命令 `docker-compose ps`查看服务的运行状态,使用 `docker-compose logs`查看服务的日志输出。 ### 三、配置反向代理(非必须) * 为了进一步加强安全防护,因此加入一层反向代理。这里使用nginx。 ``` server { listen 443 ssl; listen [::]:443 ssl; server_name xxx.xxx.com; charset utf-8; access_log off; ssl_certificate /home/cert/fullchain.cer; ssl_certificate_key /home/cert/xxxx.com.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { proxy_pass http://localhost:2017; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } server { listen 80; listen [::]:80; server_name xxx.xxx.com; # 核心代码 rewrite ^(.*)$ https://${server_name}$1 permanent; } ``` ### 四、访问与配置 V2RayA * **访问管理界面** :无论是通过 Docker 还是 Docker Compose 部署,在容器成功运行后,打开浏览器,访问 `https://localhost:2017`,即可进入 V2RayA 的管理界面。若是在远程服务器上部署,则将 `localhost`替换为服务器的 IP 地址。 * **初始配置** :首次访问时需要设置管理员账号和密码。登录后,可以添加或导入节点,配置代理模式等参数,以满足不同的网络代理需求。 ### 五、注意事项 * **目录挂载** :在 Docker 和 Docker Compose 的配置中,都涉及到将宿主机的目录挂载到容器内。这样可以确保 V2RayA 的配置文件和数据在容器重启或更新后能够得以保留。 * **版本更新** :当有新的 V2RayA 版本发布时,可以先执行 `docker pull mzz2017/v2raya`更新镜像,然后再重新运行容器或执行 `docker-compose up -d`更新服务,以获取最新的功能和安全更新。 * **防火墙设置** :确保服务器的防火墙规则允许访问 V2RayA 所使用的端口,如 2017 端口。 最后修改:2025 年 07 月 03 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏