简介
本文介绍如何使用 Docker
搭建 NestJS
和 MongoDB
的开发环境。
完整项目地址: github.com/LeoooY/nest…
要成功的将代码运行起来,并理解每个部分的工作原理,你至少需要对以下的知识点有基本的了解:
JavaScript
&TypeScript
Docker
的基本使用MongoDB
的基本使用
前置条件
- 安装
Docker
和Docker-Compose
- 安装
NodeJS
开始搭建
主要步骤:
- 创建
NestJS
项目 - 容器化
NestJS
项目 - 使用
Docker-Compose
编排容器 - 在
NestJS
项目中连接MongoDB
服务
创建 NestJS
项目
Introduction | NestJS
使用 nest new
命令创建完成后,cd
到 project-name
项目根目录执行 start:dev
。
打开浏览器访问 http://localhost:3000
,能正常访问就说明NestJS
项目已经创建好了。
容器化 NestJS
项目
在这个步骤,我们需要刚刚创建的NestJS
项目打包成一个 Docker
容器。
- 首先在
NestJS
项目根目录新建一个Dockerfile
文件
- 修改
Dockerfile
文件内容
这样一个 NestJS
项目的 Docker
镜像就定制好了。
使用 Docker-Compose
编排容器
Docker-Compose
的 docker-compose.yml
配置文件可以将一组相关联的应用容器定义为一个项目,这样我们可以很方便的管理 NestJS
和 MongoDB
的服务。
- 在
NestJS
项目根目录新建一个docker-compose.yml
文件
- 修改
docker-compose.yml
文件内容
到这一步,我们已经完成了容器化的所有步骤,剩下的就是在 NestJS
去连接 MongoDB
服务。
在 NestJS
项目中连接 MongoDB
服务
我们使用 NestJS
推荐的 @nestjs/mongoose
工具来连接 MongoDB
服务。
- 安装
@nestjs/mongoose
- 连接
MongoDB
服务
app.module.ts
启动项目
现在,我们已经完成了所有的配置工作,可以把项目给跑起来了。
启动 NestJS
服务、Mongo
服务和 Mongo-Express
服务。
查看各个容器的状态
查看容器的日志
进入容器 shell
参考资料
- Setting up a NestJS project with Docker for Back-End development
- Containerized development with NestJS and Docker
- How To Run MongoDB as a Docker Container
- Containerize Nest.js+MongoDB application in 5 minutes
- Accessing a docker container from another container
- From inside of a Docker container, how do I connect to the localhost of the machine?
- Docker从入门到实践
- Eggjs Dockerfile
@nestjs/mongoose
- Docker-compose: node_modules not present in a volume after npm install succeeds
- Top 4 Tactics To Keep Node.js Rockin’ in Docker
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!