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代码

代码

相关推荐
Penge6664 分钟前
《Go 后端开发者学 React:Hook》
javascript
Penge6665 分钟前
《Go 后端开发者学 React:前端 HTTP 请求详解》
javascript
风骏时光牛马12 分钟前
生成一个AI面试复盘标题,只需要一个标题,不需要其他的任何文本。
前端
红尘散仙9 小时前
谁说终端只能敲键盘?我用 Rust 给小说阅读器加上了鼠标
前端·后端·rust
Penge6669 小时前
《Go 后端开发者学 React:组件通信与插槽》
javascript
陈随易10 小时前
C++26 草案被否,二十八年来头一回
前端·后端·程序员
ZhengEnCi10 小时前
Agent 工具怎么折叠海量输出才「爽」:Trae、Claude Code 的渐进式披露设计原理
前端·agent
Penge66611 小时前
《Go 后端开发者学 React:useState》
javascript
Penge66611 小时前
《Go 后端开发者学 React:数据渲染》
javascript
IT_陈寒14 小时前
Redis内存暴涨,没想到是AOF重写捣的鬼
前端·人工智能·后端