我们传递—build标志以便Docker可以编译我们的图像启动它
在本节中,我们将创建一个复合文件,用一个命令启动我们的节点docker和MongoDB我们还将设置Compose文件以调试模式启动node—docker,这样我们就可以将调试器连接到正在运行的节点进程
版本: '3.8 '
服务:
注释:
build:
上下文:
端口:
— 8000:8000
— 9229:9229
环境:
— SERVER_PORT=8000
—COnnectionSTRING=MongoDB ://mongob :27017/notes
卷:
— ./:/app
command: npm运行调试
mongo:
image: mongo:4.2.8
端口:
— 27017:27017
卷:
—MongoDB :/数据/数据库
—MongoDB _ config :/data/config db
卷:
mongodb:
mongodb_config:
这个编写文件非常方便,因为我们不必键入所有参数来传递给docker运行命令我们可以在合成文件中声明性地做到这一点
使用合成文件的另一个很酷的特性是,我们将服务解析设置为使用服务名称所以现在我们可以mongo用在我们的连接字符串中我们使用mongo的原因是我们在Compose文件中命名了我们的MongoDB服务
要在调试模式下启动我们的应用程序,我们需要在package.json文件中添加一行,告诉npm如何在调试模式下启动我们的应用程序。
打开package.json文件,并将下面一行添加到脚本部分:
debug ' : ' nodemon—inspect=0 . 0 . 0 . 0:9229 server . js '
如您所见,我们将使用nodemonMON在调试模式下启动我们的服务器,监控更改的文件,并重新启动我们的服务器让我们在终端中运行以下命令,将nodemon安装到我们的项目目录中
$ npm安装节点
让我们开始我们的应用程序,并确保它正常工作。
$ docker—compose—f docker—compose . dev . yml构建
我们传递— build标志,以便Docker可以编译我们的图像,然后启动它。
如果一切顺利,你应该会看到类似:的东西。
现在让我们测试我们的API端点。运行以下curl命令:
您应该会收到以下回复:
代码:成功,元:总计:0,计数:0,有效负载:
。郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。