ubuntu 原始部署 和 宝塔部署 node

Posted 漫漫长路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu 原始部署 和 宝塔部署 node相关的知识,希望对你有一定的参考价值。

 

 

1. 选用Linux系统
2.node 测试的包有express knex
3. Linux 安装 nodejs 环境 https://github.com/nodesource/distributions
4. Linux 系统权限(sudo) npm 安装 pm2
5. 用 pm2 启动后端服务 示例:pm2 start index.mjs

6.注意端口号占用
7.防火墙打开对应端口号

 

 

 

 

 

 


Linux 宝塔部署

sudo bt 显示所有指令
输入 14 指令
登录宝塔
关联腾讯云API密钥 弹出框底部有个查看帮助点击一下,直接进入 (https://console.cloud.tencent.com/cam/capi)
安装mysql 和 nginx

添加数据库
myTest
hJPXBZkL6PwMsm3P
访问权限,本地服务器

开端口3306让 Navicat连接

在宝塔文件导航里面新建一个文件(部署)
上传需要的项目

打开网站导航,安装nodejs管理器---》LTS---》更新列表---》安装所需要的版本安装--》设置命令行版本(选择框来的)
添加nodejs项目-----》指定项目目录-----》填写项目名称---》检查端口

 

 

 

 

 

 

 

 

 

 

import express from "express";
import Knex from "knex";

const app = express();

const knex = Knex(
  client: "mysql2",
  connection: 
    host: "119.91.31.144", // 本地 localhost 外部开发用 ip 地址
    port: 3306, // 默认端口 3306
    user: "myTest", // 用户名
    password: "hJPXBZkL6PwMsm3P", // 密码
    database: "mytest", // 指定数据表,应该是数据库吧
  ,
);

// 测试数据库是否连接正常
knex
  .raw("SELECT 1")
  .then(() => console.log("Connection successful"))
  .catch((err) => console.error("Connection failed", err));

app.get("/", async (req, res, next) => 
  const list = await knex(\'test1\').select(\'*\')
  return res.json(list);
);

app.listen(80, () => 
  console.log(`http://localhost/`);
);

 

宝塔面板部署Spring Boot项目

参考技术A 一般的 Spring Boot 项目打包完是 .jar 文件,已内嵌了 Tomcat 服务器,但是当我们部署到生产环境的时候一般用的是 .war 包,这次我们使用宝塔面板来完成项目的环境搭建和部署。

此教程所使用的环境:

首先,我们需要构建 .war 包,需要对项目构建进行一些设置,以 Maven 为例,修改 pom.xml 。
修改打包方式为 war ,注意最后一行:

加入这一项依赖设置:

在包的根目录新建一个 ServletInitializer 类(比如在我的项目里,与 BaotatestApplication 类同级),内容类似如下:

然后再回到项目根目录(有 pom.xml 的目录),进行编译:

如果要跳过测试,就输入:

编译完成之后就能在 target/ 目录下找到我们的 .war 包,比如我是 baotatest-0.0.1-SNAPSHOT.war 。

接下来配置服务器环境,首先宝塔面板的安装不再赘述,到其“软件商店”安装好:

安装完 Tomcat 后记得放行 8080 端口(Tomcat 默认端口)。再把我们的 .war 包放进 /www/server/tomcat/webapps 目录就会自动解压部署,在同级目录生成同名文件夹(如果没有自动部署就重启一下 Tomcat,另外部署不成功的话可以去 /www/server/tomcat/logs 看看日志文件)。此时再访问 http://example.com:8080/baotatest-0.0.1-SNAPSHOT/ 就可以访问我们的应用了。

后面长长的一串似乎并不好看,我们可以将其去掉,有两种方法。

一种是直接将包名改成 ROOT.war ,即可。

另一种需要修改配置文件 /www/server/tomcat/conf/server.xml ,在 <host>...</host> 标签内插入:

或者这样:

path 属性可以定义访问的路径,比如挂载到 /hello 上,这里我们留空就是根域名。
然后再将 Tomcat 配置重载,我们就能在根目录下访问到这个项目了。

还有就是给上传目录配置静态资源映射,比如我这里的 有一个上传目录 /www/uploads ,用户上传的图片都会保存到这个 uploads 文件夹来,那如何在服务器访问这个目录呢?一样,加入:

习惯上还需要配置一下 Nginx 反向代理 Tomcat。
去宝塔的“网站”页面里新建一个站点,除了域名保持默认就行了。
然后在其“设置”中配置“反向代理”,目标域名就是 Tomcat 的地址,比如 http://dev.shadowcat.cn:8080 ,发送地址用 $host 就可以了,其他保持默认即可,最后访问一下 Nginx 即可成功返回结果。

以上是关于ubuntu 原始部署 和 宝塔部署 node的主要内容,如果未能解决你的问题,请参考以下文章

基于宝塔面板安装部署mochat

腾讯云服务器安装宝塔面板并把node+vue部署到云服务器,vue+elementUI+node文件上传项目超详细

宝塔面板部署django程序 测试部署两个网站

CentOS7 宝塔面板 MinIO安装部署/服务开机启动

宝塔ssl部署完,https无法访问故障解决

linux 服务器 php vue项目部署流程总结