如何在Docker容器中调试Node.js应用程序
简介
自古以来,虫子就在困扰着人类。在那个时候,它们产生了不同的疾病,但今天的bug是程序中的逻辑错误。有时这些也是开发者的噩梦。在这篇文章中,我们将学习如何在Docker容器上创建一个Node.js应用程序,以及如何将调试器附加到Node应用程序中。
什么是调试
调试只不过是解决Node.js应用程序代码中的问题或错误。这个应用程序可能会在执行所有给它的任务时遇到困难。调试有助于抚平Node.js应用程序的所有这些路径。这最终有利于终端用户和公司。
在Ubuntu Linux上安装Node.js
按照以下步骤,在Ubuntu机器上安装Node.js。
现在安装nodejs
要安装节点软件包管理器,请使用以下命令。
使用npx创建一个NodeJS应用程序
下面我们有一个创建节点应用程序的逐步指南。这里提到了一些先决条件,让你知道我们所处的环境。
- Ubuntu Linux
-
已安装的节点
第1步:创建一个目录
创建一个名为 “debug “的目录,并将该目录改成它。
检查你是否在正确的目录内。
输出
第2步:创建节点应用程序
这里我们将使用npx为我们创建一个全功能的Node.js应用程序。
示例
输出
使用npm创建一个NodeJS应用程序
要在你的系统上实现这项任务,必须在机器上安装NodeJS和npm。按照下面的步骤,准备好目录结构。所有的数据都在一个名为 “debug_node “的目录内创建。
第1步:创建一个文件app.js
将以下代码粘贴到app.js文件中。
第2步:使用npm进行初始化
这将创建package.json文件。
第3步:安装express
现在我们需要快速安装。
示例
输出
在package.json文件的scripts部分内添加start命令。编辑之后,package.json的代码看起来像这样。
第4步:运行应用程序
示例
输出
该应用程序成功地在localhost:3000上运行。
容器化的节点应用程序
第1步:创建一个Docker文件
下面的dockerfile将被用来构建一个带有node应用程序的node容器。把这个文件命名为Dockerfile,它应该和package.json在同一级别上出现。
第2步:建立图像
示例
输出
第3步:运行该容器
检查容器是否在localhost:5001上运行。
将VScode调试器附加到容器上
为了实现NodeJS应用程序的调试器,我们需要在与我们的node应用程序相同的文件夹中创建一个docker-compose文件。
第1步:创建docker-compose文件
创建一个文件docker-compose.yml并粘贴以下代码。
第2步:编撰起来
输出
第3步:连接调试器
现在检查两者是否都在监听端口上。根据docker-compose文件,应用程序将在5003端口,调试器在9229端口。
对于节点应用程序localhost:5003
对于调试,我们将使用vscode。打开它,选择调试器扩展部分,选择create launch.json .点击最左角的播放按钮,调试器就准备好了,并成功监听。
结论
因此,我们能够成功地连接到visual studio代码内的调试器。我们还可以通过使用exec命令直接检查容器。