NestJS实战12-部署上线

by 雪隐 from juejin.cn/user/143341...

本文欢迎分享与聚合,全文转载就不必了,尊重版权,圈子就这么大,若急用可联系授权

概述

基本上开发的内容差不多了,现在就可以部署上线试一试了。

服务器和域名

这个网上有很多参考:【建站】 建站第一天 ------ 域名、云服务器、域名解析,大家根据自己的情况购买一个有公网Ip的Linux系统的云服务即可,还有买一个自己喜欢的域名。

Docker环境配置

我之前写过,主要就是根据官网配置即可docker环境

docker内容做成以及部署

最后把我的下面的内容做成yaml文件(docker-compose.yml):

yaml 复制代码
version: "3"
services:
  webserver:
    image: nginx
    volumes:
      - ./default.conf:/etc/nginx/conf.d/default.conf
      - "./website:/var/www/html/website"
      - ./nginx_logs:/var/log/nginx
    depends_on:
      - backend
    ports:
      - "80:80"

  backend:
    image: "node:20-bullseye-slim"
    user: "root"
    working_dir: /home/app
    container_name: gateway-service-dev
    ports:
      - "8000:8000"
    volumes:
      # 创建/uploads目录并挂载
      - ./uploads:/home/app/uploads
      # 创建/downloads目录并挂载
      - ./website/downloads:/home/app/public/downloads
      # 挂载日志
      - ./logs:/home/app/logs
      # 挂载配置文件
      - ./config:/home/app/config
      # 挂载各种第三方插件
      - ./node_modules:/home/app/node_modules
      # 挂载主要程序
      - ./dist:/home/app/dist
    # 更改用户组和目录权限
    command: sh -c "chown -R 777 /home/app/uploads && node /home/app/dist/main.js"
    environment:
      RUNNING_ENV: 'prod'

把前后端的项目复制到服务器上

编写nginx的config文件

bash 复制代码
upstream backend {
    server backend:8000;
}

server {
    listen 80 default_server;
    server_name _;

    location /api/ {
        proxy_pass http://backend;
    }

    # 配置访问后端的public目录
    location /backend/public/ {
        alias /var/www/backend/public/;
    }

    location / {
        root /var/www/html/website;
        index index.html index.htm;
        try_files $uri $uri/ /index.html;
    }
}

然后运行docke-compose

ts 复制代码
docker-compose up -d --build

总结

完结撒花,基本上我的个人管理系统和核心的知识点都和大家介绍完毕了。如果这篇文章对你们有帮助,请记得点赞评论🙏!

docker代码

代码

相关推荐
JosieBook1 小时前
【web应用】如何进行前后端调试Debug? + 前端JavaScript调试Debug?
前端·chrome·debug
LBJ辉1 小时前
2. Webpack 高级配置
前端·javascript·webpack
灵感__idea8 小时前
JavaScript高级程序设计(第5版):好的编程就是掌控感
前端·javascript·程序员
烛阴9 小时前
Mix
前端·webgl
代码续发9 小时前
前端组件梳理
前端
试图让你心动10 小时前
原生input添加删除图标类似vue里面移入显示删除[jquery]
前端·vue.js·jquery
陈不知代码10 小时前
uniapp创建vue3+ts+pinia+sass项目
前端·uni-app·sass
小王码农记10 小时前
sass中@mixin与 @include
前端·sass
陈琦鹏10 小时前
轻松管理 WebSocket 连接!easy-websocket-client
前端·vue.js·websocket
hui函数11 小时前
掌握JavaScript函数封装与作用域
前端·javascript