aboutsummaryrefslogtreecommitdiff
path: root/template
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2023-05-31 23:55:57 +0800
committercrupest <crupest@outlook.com>2023-05-31 23:55:57 +0800
commit4cc25bea963c09a1eb0f951bed1eabc75d196446 (patch)
tree2f5aa4fe9684a19463255b454162cc84d35ccc2a /template
parent4e6260b7d03a38be65203139631d5fda523e80af (diff)
downloadcrupest-4cc25bea963c09a1eb0f951bed1eabc75d196446.tar.gz
crupest-4cc25bea963c09a1eb0f951bed1eabc75d196446.tar.bz2
crupest-4cc25bea963c09a1eb0f951bed1eabc75d196446.zip
Add v2ray.
Diffstat (limited to 'template')
-rw-r--r--template/docker-compose.yaml.template16
-rw-r--r--template/nginx/root.conf.template17
-rw-r--r--template/v2ray-client-config.json.template46
-rw-r--r--template/v2ray-config.json.template29
4 files changed, 108 insertions, 0 deletions
diff --git a/template/docker-compose.yaml.template b/template/docker-compose.yaml.template
index ad3b0ab..b2e3fe9 100644
--- a/template/docker-compose.yaml.template
+++ b/template/docker-compose.yaml.template
@@ -65,6 +65,7 @@ services:
- code-server-network
- auto-certbot-network
- crupest-api-network
+ - v2ray-network
crupest-api:
pull_policy: build
@@ -80,6 +81,19 @@ services:
networks:
- crupest-api-network
+ crupest-v2ray:
+ image: v2fly/v2fly-core:latest
+ pull_policy: always
+ command: [ "-c", "/etc/v2fly/config.json" ]
+ container_name: crupest-v2ray
+ restart: on-failure:3
+ volumes:
+ - "./v2ray-config.json:/etc/v2fly/config.json:ro"
+ expose:
+ - "10000:10000"
+ networks:
+ - v2ray-network
+
auto-certbot:
pull_policy: build
depends_on:
@@ -163,6 +177,8 @@ networks:
code-server-network:
auto-certbot-network:
crupest-api-network:
+ v2ray-network:
+
volumes:
blog-public:
diff --git a/template/nginx/root.conf.template b/template/nginx/root.conf.template
index dfedc81..f148db8 100644
--- a/template/nginx/root.conf.template
+++ b/template/nginx/root.conf.template
@@ -11,6 +11,22 @@ server {
root /srv/www;
}
+ location /_$CRUPEST_V2RAY_PATH {
+ if ($http_upgrade != "websocket") {
+ return 404;
+ }
+
+ proxy_redirect off;
+ proxy_http_version 1.1;
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection $connection_upgrade;
+ proxy_set_header Host $host;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_set_header X-Forwarded-Proto $scheme;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_pass http://crupest-v2ray:10000;
+ }
+
location /api {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
@@ -21,6 +37,7 @@ server {
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://crupest-api;
}
+
}
server {
diff --git a/template/v2ray-client-config.json.template b/template/v2ray-client-config.json.template
new file mode 100644
index 0000000..0c99c6d
--- /dev/null
+++ b/template/v2ray-client-config.json.template
@@ -0,0 +1,46 @@
+{
+ "inbounds": [
+ {
+ "port": 1080,
+ "listen": "127.0.0.1",
+ "protocol": "socks",
+ "sniffing": {
+ "enabled": true,
+ "destOverride": [
+ "http",
+ "tls"
+ ]
+ },
+ "settings": {
+ "auth": "noauth",
+ "udp": false
+ }
+ }
+ ],
+ "outbounds": [
+ {
+ "protocol": "vmess",
+ "settings": {
+ "vnext": [
+ {
+ "address": "$CRUPEST_DOMAIN",
+ "port": 443,
+ "users": [
+ {
+ "id": "$CRUPEST_V2RAY_TOKEN",
+ "alterId": 0
+ }
+ ]
+ }
+ ]
+ },
+ "streamSettings": {
+ "network": "ws",
+ "security": "tls",
+ "wsSettings": {
+ "path": "/_$CRUPEST_V2RAY_PATH"
+ }
+ }
+ }
+ ]
+} \ No newline at end of file
diff --git a/template/v2ray-config.json.template b/template/v2ray-config.json.template
new file mode 100644
index 0000000..33d3f16
--- /dev/null
+++ b/template/v2ray-config.json.template
@@ -0,0 +1,29 @@
+{
+ "inbounds": [
+ {
+ "port": 10000,
+ "listen": "0.0.0.0",
+ "protocol": "vmess",
+ "settings": {
+ "clients": [
+ {
+ "id": "$CRUPEST_V2RAY_TOKEN",
+ "alterId": 0
+ }
+ ]
+ },
+ "streamSettings": {
+ "network": "ws",
+ "wsSettings": {
+ "path": "/_$CRUPEST_V2RAY_PATH"
+ }
+ }
+ }
+ ],
+ "outbounds": [
+ {
+ "protocol": "freedom",
+ "settings": {}
+ }
+ ]
+} \ No newline at end of file