diff --git a/deploy.sh b/deploy.sh new file mode 100644 index 00000000..34510b3a --- /dev/null +++ b/deploy.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +cd /apps/think +git checkout main +git pull + +pnpm install +pnpm run build +pnpm run pm2 + +pm2 startup +pm2 save diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 00000000..1004584d --- /dev/null +++ b/nginx.conf @@ -0,0 +1,86 @@ +upstream think_server { + server 127.0.0.1:5001; + keepalive 64; +} + +upstream think_client { + server 127.0.0.1:5002; + keepalive 64; +} + +upstream think_wss { + server 127.0.0.1:5003; + keepalive 64; +} + +server { + listen 80; + server_name api.codingit.cn; + rewrite ^(.*)$ https://$host$1 permanent; +} + +server { + listen 443 ssl http2; + server_name api.codingit.cn; + + ssl_certificate /apps/ssl/api.codingit.cn/api.codingit.cn.pem; + ssl_certificate_key /apps/ssl/api.codingit.cn/api.codingit.cn.key; + ssl_session_timeout 5m; + + client_max_body_size 100m; + + + location /think/wss { + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header X-Nginx-Proxy true; + proxy_cache_bypass $http_upgrade; + proxy_pass http://think_wss; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } + + location /think { + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Nginx-Proxy true; + proxy_cache_bypass $http_upgrade; + proxy_pass http://think_server; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } +} + +server { + listen 80; + server_name think.codingit.cn; + rewrite ^(.*)$ https://$host$1 permanent; +} + +server { + listen 443 ssl http2; + server_name think.codingit.cn; + + ssl_certificate /apps/ssl/think.codingit.cn/think.codingit.cn.pem; + ssl_certificate_key /apps/ssl/think.codingit.cn/think.codingit.cn.key; + ssl_session_timeout 5m; + + + location / { + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header X-Nginx-Proxy true; + proxy_cache_bypass $http_upgrade; + proxy_pass http://think_client; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + } +} \ No newline at end of file