nodejs支持ts吗,node项目如何部署
如何正确快速的部署一个TS Node.js项目?以下文章将在几分钟内教您如何部署TS Node.js应用程序。希望对你有帮助!
node.js速度课程简介:进入学习
作为一个全栈开发人员,创建一个项目是很有趣的。你可以设计架构,头脑风暴和开发,但在开发之后,我们必须部署或发布应用程序。那么如何正确快速的部署一个TS Node.js项目呢?今天我们将修复它。[推荐研究:《nodejs 教程》]
创建一个TS Node.js应用
如果您已经熟悉创建TS Node.js项目,可以跳到“部署和发布应用程序”一节。
初始化Node.js项目:
在我们的团队中,我们非常喜欢ts,并将在我们所有的新项目中使用TS,因此创建TS项目并不新鲜。
让我们从基础开始:
NPinit初始化一个Node.js项目,使用-y参数可以快速跳过分步配置。
npminstallexpress @ types/express安装express依赖项,以及用于TS开发的express类型文件。
Npm install typescript - save-dev将typescript作为开发依赖项安装。
mkdir我的应用cd我的应用
npm初始化-y
npm安装快速@类型/快速-保存
m安装typescript-save-dev
TS配置
nptsc-init会创建一个typescript的默认配置文件tsconfig.jsondeclaration,用来指定编译后是否生成对应的*.d.ts文件。默认值是falseoutdir,它定义了ts编译后的目录。如果没有声明,默认的编译文件位置将在TS源文件所在的位置运行命令。
Xtsc-init修改以下配置
编译器选项:{
.
OutDir: dist ,//编译输出目录
Declaration: true //生成d.ts
}
创建项目入口文件
创建server.ts文件
从“快递”导入快递
const app=express()
常量端口=3000
app.use(express.json())
app.get(/,(req,res)={
res.send(Hello World!)
})
app.listen(PORT,()={
console.log(`服务器正在侦听端口${PORT} `)
})完成以上步骤后,我们的文件目录结构如下。
节点_模块
包-锁. json
包. json
服务器. ts
tsconfig.json
编译TS
我们的下一步是构建和部署我们的TS Node.js应用程序。由于在生产环境中,我们不运行TS版本,而是运行编译后的JS。让我们编译这个项目。
修改package.json文件以添加以下命令
npruntsc将根据我们的tsconfig.json的配置编译我们的项目,并将其输出到指定的目录。
Npm run start:prod将运行我们编译的JS文件。
脚本:{
tsc: tsc ,
start:prod : node dist/server . js
}然后在本地测试
npm运行tsc
npm运行开始:生产
#服务启动成功,运行端口:3000,通过浏览器访问http://localhost:3000/,访问成功。接下来,我们部署并发布我们的应用程序。
部署发布应用
这里主要用两种方法将编译好的TS项目分发部署到各种环境中。
npm依赖包docker容器方法的形式
NPM依赖包的形式
NPM生命周期钩子
某些特殊的生命周期钩子会在指定操作被触发时被触发。这里,我们将使用“准备”钩子,它将在执行npm发布命令并将其发布到NPM之前被触发一次。所以这时候我们就可以编译TS应用了。
指定发布文件
通过“文件”字段,我们可以定义发布NPM软件包时应包含哪些文件。如果省略此属性,默认情况下将为[* ,并且将上载所有文件。
下面是修改后的package.json
Name: my-app-xiaoshuii ,//我们发布到NPM的名称
Main: dist/server.js ,//修改条目文件的地址
Types: dist/server.d.ts ,//指定ts类型文件
文件:[
距离,
package.json ,
package-lock.json ,
README.md
],
脚本:{
tsc: tsc ,
准备: npm运行tsc //编辑类型脚本
}
npm publish
修改package.json配置后,我们运行npm publish命令将我们的应用程序发布到npm。
公共输出
发布成功后,可以看到npmjs上多了一个my-app-xiaoshuii包。
Docker容器方式
要将我们的TS Node.js应用程序发布为容器,我们必须在项目的根目录下创建docker配置文件Dockerfile。
让我们一步一步地编写Dockerfile文件。
将编译后的文件复制到容器中。
将package.json和package-lock.json复制到容器中
使用npm install安装依赖项。
使用nodebuild/server.js运行我们的应用程序。
#节点版本
自节点:14 . 18 . 0-阿尔卑斯山
ARG NODE _ ENV=生产
环境节点_环境$节点_环境
收到。/距离/距离
收到。/包. json/包. JSON
收到。/package-lock . JSON/package-lock . JSON
运行NODE_ENV=$NODE_ENV npm安装
曝光3000
CMD [node , dist/server.js]现在我们可以在根目录中构建docker映像并运行docker build-tagmy-app:test . command。
Docker构建-标记我的应用程序:测试。成功后,输出如下
然后我们运行容器,并使用docker run-p 3000:3000-it my-app:test命令来运行我们的应用程序。我们可以看到程序成功地运行在端口3000上。
docker run -p 3000:3000 -it my-app:测试
#服务启动成功,运行端口:3000,通过浏览器访问http://localhost:3000/,访问成功。
源码
总结
今天我们介绍了创建TS Node.js项目和部署的基础知识。我们希望它对每个人都有帮助,并能用于当前或未来的项目。
有关编程的更多信息,请访问:编程视频!以上就是教你如何正确快速的部署一个TS Node.js项目!更多详情请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。