使用 Docker 部署 V2Ray 和 Caddy 的完整指南

目录

  1. Docker 安装
  2. V2Ray 容器部署
    1. V2Ray 配置文件编写
    2. 启动 V2Ray 容器
  3. Caddy 容器部署
    1. Caddyfile 配置文件编写
    2. 启动 Caddy 容器
  4. FAQ

Docker 安装

Docker 是一种容器化技术,可以帮助我们快速部署和管理应用程序。在开始部署 V2Ray 和 Caddy 之前,我们需要先安装 Docker。

Docker 的安装方法因操作系统而有所不同,您可以参考 Docker 官方文档进行安装:

安装完成后,您可以通过运行 docker version 命令来验证 Docker 是否已经成功安装。

V2Ray 容器部署

V2Ray 配置文件编写

V2Ray 的配置文件采用 JSON 格式,我们需要编写一个包含以下内容的 config.json 文件:

{ “inbounds”: [ { “port”: 10086, “protocol”: “vmess”, “settings”: { “clients”: [ { “id”: “your-uuid”, “alterId”: 64 } ] } } ], “outbounds”: [ { “protocol”: “freedom”, “settings”: {} } ]}

其中 "your-uuid" 需要替换为您自己的 UUID。您可以使用在线工具生成一个新的 UUID。

启动 V2Ray 容器

使用以下命令启动 V2Ray 容器:

docker run -d –name v2ray -v $(pwd)/config.json:/etc/v2ray/config.json -p 10086:10086 v2ray/official

这个命令会从 Docker Hub 拉取官方的 V2Ray 镜像,并将我们编写的 config.json 文件挂载到容器内部的 /etc/v2ray/config.json 位置。同时,它会将容器的 10086 端口映射到宿主机的 10086 端口。

Caddy 容器部署

Caddyfile 配置文件编写

Caddy 的配置文件称为 Caddyfile,我们需要编写一个包含以下内容的 Caddyfile 文件:

your-domain.com { reverse_proxy localhost:10086}

其中 your-domain.com 需要替换为您自己的域名。

启动 Caddy 容器

使用以下命令启动 Caddy 容器:

docker run -d –name caddy -v $(pwd)/Caddyfile:/etc/caddy/Caddyfile -p 80:80 -p 443:443 caddy

这个命令会从 Docker Hub 拉取 Caddy 镜像,并将我们编写的 Caddyfile 文件挂载到容器内部的 /etc/caddy/Caddyfile 位置。同时,它会将容器的 80 和 443 端口映射到宿主机的 80 和 443 端口。

FAQ

如何配置 V2Ray 的 TLS 加密?

要配置 V2Ray 的 TLS 加密,需要在 config.json 文件中添加以下内容:

{ “inbounds”: [ { “port”: 10086, “protocol”: “vmess”, “settings”: { “clients”: [ { “id”: “your-uuid”, “alterId”: 64 } ] }, “streamSettings”: { “network”: “tcp”, “security”: “tls”, “tlsSettings”: { “certificates”: [ { “certificateFile”: “/path/to/your/certificate.crt”, “keyFile”: “/path/to/your/private.key” } ] } } } ], “outbounds”: [ { “protocol”: “freedom”, “settings”: {} } ]}

您需要将 "certificateFile""keyFile" 替换为您自己的 TLS 证书和私钥文件的路径。

如何查看 V2Ray 和 Caddy 的日志?

您可以使用以下命令查看 V2Ray 和 Caddy 容器的日志:

docker logs v2ray

docker logs caddy

这将显示容器内部的日志信息,帮助您排查问题。

如何更新 V2Ray 和 Caddy 到最新版本?

要更新 V2Ray 和 Caddy 到最新版本,您可以使用以下命令:

docker pull v2ray/official docker stop v2ray docker run -d –name v2ray -v $(pwd)/config.json:/etc/v2ray/config.json -p 10086:10086 v2ray/official

docker pull caddy docker stop caddy docker run -d –name caddy -v $(pwd)/Caddyfile:/etc/caddy/Caddyfile -p 80:80 -p 443:443 caddy

这些命令会先拉取最新的 Docker 镜像,然后停止并重新启动容器,从而完成更新。

正文完