Skip to content

SimpleChat 部署NestJS服务

更新日期 2022-8-19
  • 2022-8-19 更新说明
  • 2022-5-10 创建文档

开发环境

  • macOS 12.3.1
  • Ubuntu 16.04
  • nest 8.1.5
  • pm2 4.4.1

本文目标

将服务部署到服务器上

html中路径问题

当心/js/index.js的路径,最开头那个/不能省略。

准备

申请一个域名,并且申请SSL证书

将工程传到服务器上

Nginx

配置nginx,允许wss

map $http_upgrade $connection_upgrade {
    default upgrade;
    '' close;
}

upstream chatws {
    server 127.0.0.1:9010;
}

server {
    listen 443;
    server_name antalkws.rustfisher.com;
    ssl on;
    ssl_certificate /home/ubuntu/server/ssl/antalk/antalkws.rustfisher.com_bundle.crt;
    ssl_certificate_key /home/ubuntu/server/ssl/antalk/antalkws.rustfisher.com.key;
    ssl_session_timeout 20m;
    ssl_verify_client off;
    location / {
        root /home/ubuntu/server/wiki-site/an-rf-wiki;
        index index.html index.htm;

        proxy_pass http://127.0.0.1:9010;
    }

    location /chat1 {
        proxy_pass http://chatws;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_read_timeout 300s;
    }
}

启动

更新代码后,先install

npm install

然后手动启动,测试一下

npm run start

每次更新代码最好都要先npm install

调试OK后,使用pm2来管理任务。pm2 start启动任务

pm2 start dist/main.js --name='simple-chat'

访问 https://antalkws.rustfisher.com/web/ 可以看到效果

注:服务可能不会长时间运行,上面链接有可能失效

简易运行效果

本页面已经连接到后台服务,可以打开多个浏览器页面尝试聊天功能。

点击Connect按钮发起连接。

本站说明

一家之言,抛砖引玉。如有错漏,还请指出。下方广告内容与本站无关。如果喜欢本站内容,可请作者喝咖啡,谢谢支持服务器。

AndroidTutorial - Gitee AndroidTutorial - Github 反馈问题 - Gitee 最近更新的文章 请作者喝咖啡

Ads