From e997cd9907f5e61952c1d64b8e44eadc8598ead4 Mon Sep 17 00:00:00 2001 From: colawithsauce Date: Fri, 8 Dec 2023 18:46:10 +0800 Subject: [PATCH 1/5] Support unblock via docker. --- Dockerfile | 11 +++++++---- docker-compose.yml | 27 ++++++++++++++++++++++++++- docker/nginx.conf.example | 3 ++- 3 files changed, 35 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 19d38172a1..8d29ffee24 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,20 @@ FROM node:16.13.1-alpine as build ENV VUE_APP_NETEASE_API_URL=/api WORKDIR /app -RUN apk add --no-cache python3 make g++ git +RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories &&\ + apk add --no-cache python3 make g++ git COPY package.json yarn.lock ./ RUN yarn install COPY . . -RUN yarn build +RUN yarn config set electron_mirror https://npmmirror.com/mirrors/electron/ && \ + yarn build FROM nginx:1.20.2-alpine as app COPY --from=build /app/package.json /usr/local/lib/ -RUN apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main libuv \ +RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories &&\ + apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main libuv \ && apk add --no-cache --update-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/main nodejs npm \ && npm i -g $(awk -F \" '{if($2=="NeteaseCloudMusicApi") print $2"@"$4}' /usr/local/lib/package.json) \ && rm -f /usr/local/lib/package.json @@ -19,4 +22,4 @@ RUN apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.14/m COPY --from=build /app/docker/nginx.conf.example /etc/nginx/conf.d/default.conf COPY --from=build /app/dist /usr/share/nginx/html -CMD nginx ; exec npx NeteaseCloudMusicApi +CMD nginx ; exec env NODE_TLS_REJECT_UNAUTHORIZED=0 npx NeteaseCloudMusicApi \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 221b66d765..3cc926d613 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,5 +8,30 @@ services: - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro ports: - - 80:80 + - 1202:80 restart: always + depends_on: + - UnblockNeteaseMusic + environment: + - NODE_TLS_REJECT_UNAUTHORIZED=0 + networks: + my_network: + + UnblockNeteaseMusic: + image: pan93412/unblock-netease-music-enhanced + command: -o bilibili kugou kuwo pyncmd -p 80:443 -f 59.111.19.99 + environment: + - NODE_TLS_REJECT_UNAUTHORIZED=0 + networks: + my_network: + aliases: + - music.163.com + - interface.music.163.com + - interface3.music.163.com + - interface.music.163.com.163jiasu.com + - interface3.music.163.com.163jiasu.com + restart: always + +networks: + my_network: + driver: bridge \ No newline at end of file diff --git a/docker/nginx.conf.example b/docker/nginx.conf.example index cdab218250..697d437c57 100644 --- a/docker/nginx.conf.example +++ b/docker/nginx.conf.example @@ -23,6 +23,7 @@ server { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $remote_addr; proxy_set_header X-NginX-Proxy true; + proxy_pass http://localhost:3000/; } -} +} \ No newline at end of file From a5cb1f729d39e376f668c243bb946aea925b20ef Mon Sep 17 00:00:00 2001 From: colawithsauce Date: Fri, 8 Dec 2023 18:52:54 +0800 Subject: [PATCH 2/5] Remove unneeded env setting --- Dockerfile | 2 +- docker-compose.yml | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8d29ffee24..2fb8f95c4c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,4 +22,4 @@ RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/re COPY --from=build /app/docker/nginx.conf.example /etc/nginx/conf.d/default.conf COPY --from=build /app/dist /usr/share/nginx/html -CMD nginx ; exec env NODE_TLS_REJECT_UNAUTHORIZED=0 npx NeteaseCloudMusicApi \ No newline at end of file +CMD nginx ; exec npx NeteaseCloudMusicApi \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 3cc926d613..d9bc685f72 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,7 +8,7 @@ services: - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro ports: - - 1202:80 + - 80:80 restart: always depends_on: - UnblockNeteaseMusic @@ -20,8 +20,6 @@ services: UnblockNeteaseMusic: image: pan93412/unblock-netease-music-enhanced command: -o bilibili kugou kuwo pyncmd -p 80:443 -f 59.111.19.99 - environment: - - NODE_TLS_REJECT_UNAUTHORIZED=0 networks: my_network: aliases: From dc1e0aaf90c738bed7fd29d6b3a7bfd487a796f2 Mon Sep 17 00:00:00 2001 From: colawithsauce Date: Sat, 9 Dec 2023 00:28:00 +0800 Subject: [PATCH 3/5] Make docker works --- docker-compose.yml | 7 +++++-- docker/nginx.conf.example | 33 ++++++++++++++++++++++++++++++++- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index d9bc685f72..8e663e500e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -19,7 +19,10 @@ services: UnblockNeteaseMusic: image: pan93412/unblock-netease-music-enhanced - command: -o bilibili kugou kuwo pyncmd -p 80:443 -f 59.111.19.99 + command: -o kugou kuwo migu bilibili pyncmd -p 80:443 -f 45.127.129.53 -e - + # environment: + # JSON_LOG: true + # LOG_LEVEL: debug networks: my_network: aliases: @@ -32,4 +35,4 @@ services: networks: my_network: - driver: bridge \ No newline at end of file + driver: bridge diff --git a/docker/nginx.conf.example b/docker/nginx.conf.example index 697d437c57..4eafa7b386 100644 --- a/docker/nginx.conf.example +++ b/docker/nginx.conf.example @@ -26,4 +26,35 @@ server { proxy_pass http://localhost:3000/; } -} \ No newline at end of file +} + +server { + listen 0.0.0.0:80; + server_name music.163.com interface.music.163.com interface3.music.163.com; + + location / { + proxy_pass http://UnblockNeteaseMusic:80; + proxy_set_header HOST 'music.163.com'; + } +} + +server { + listen 0.0.0.0:443 ssl; + server_name music.163.com interface.music.163.com interface3.music.163.com; + + # ssl on; + # ssl_certificate /etc/nginx/ssl/163/server.crt; + # ssl_certificate_key /etc/nginx/ssl/163/server.key; + + # ssl_session_timeout 10m; + # ssl_session_cache shared:SSL:10m; + + # ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + # ssl_ciphers 'AES128+EECDH:AES128+EDH'; + # ssl_prefer_server_ciphers on; + + location / { + proxy_pass https://UnblockNeteaseMusic:443; + proxy_set_header HOST 'music.163.com'; + } +} From 6d6fd9a88c415d6e5c64470ee97dff826a1a4dbe Mon Sep 17 00:00:00 2001 From: colawithsauce Date: Sat, 9 Dec 2023 00:28:00 +0800 Subject: [PATCH 4/5] Make docker works --- docker-compose.yml | 1 + docker/nginx.conf.example | 31 ------------------------------- 2 files changed, 1 insertion(+), 31 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 8e663e500e..0930218980 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,6 +7,7 @@ services: volumes: - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro + - ./docker/nginx.conf.example:/etc/nginx/conf.d/default.conf:ro ports: - 80:80 restart: always diff --git a/docker/nginx.conf.example b/docker/nginx.conf.example index 4eafa7b386..3d849b0e21 100644 --- a/docker/nginx.conf.example +++ b/docker/nginx.conf.example @@ -27,34 +27,3 @@ server { proxy_pass http://localhost:3000/; } } - -server { - listen 0.0.0.0:80; - server_name music.163.com interface.music.163.com interface3.music.163.com; - - location / { - proxy_pass http://UnblockNeteaseMusic:80; - proxy_set_header HOST 'music.163.com'; - } -} - -server { - listen 0.0.0.0:443 ssl; - server_name music.163.com interface.music.163.com interface3.music.163.com; - - # ssl on; - # ssl_certificate /etc/nginx/ssl/163/server.crt; - # ssl_certificate_key /etc/nginx/ssl/163/server.key; - - # ssl_session_timeout 10m; - # ssl_session_cache shared:SSL:10m; - - # ssl_protocols TLSv1 TLSv1.1 TLSv1.2; - # ssl_ciphers 'AES128+EECDH:AES128+EDH'; - # ssl_prefer_server_ciphers on; - - location / { - proxy_pass https://UnblockNeteaseMusic:443; - proxy_set_header HOST 'music.163.com'; - } -} From 42366f4a32b1ca5a9542d0815a9809c7d809fb87 Mon Sep 17 00:00:00 2001 From: colawithsauce Date: Sat, 9 Dec 2023 01:01:04 +0800 Subject: [PATCH 5/5] remove unneeded empty line. --- docker/nginx.conf.example | 1 - 1 file changed, 1 deletion(-) diff --git a/docker/nginx.conf.example b/docker/nginx.conf.example index 3d849b0e21..cdab218250 100644 --- a/docker/nginx.conf.example +++ b/docker/nginx.conf.example @@ -23,7 +23,6 @@ server { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $remote_addr; proxy_set_header X-NginX-Proxy true; - proxy_pass http://localhost:3000/; } }