docker 部署nestjs应用

 搭建nodejs运行环境,使用了node容器运行

1.安装运行node image

docker pull node:latest

docker run -itd --name mynode node

2.准备将编译后的代码上传到主机上

3.编写dockerfile并制作镜像

s

# 引用镜像
FROM node:latest
# 作者 MAINTAINER hzh
# 执行命令,创建文件夹 RUN mkdir
-p /var/publish/nest
# 将nestapi目录拷贝到镜像里,也可用COPY命令 ADD .
/nestapi /var/publish/nest # 执行镜像的工作目录 WORKDIR /var/publish/nest
# 配置系统变量,指定端口
ENV HOST 0.0.0.0 ENV PORT 3002
# 开放端口 EXPOSE
3002

# 容器启动命令
CMD ["node","dist/main.js"]

创建了Dockerfile之后,构建出镜像

注意后面的那个点一定要写

docker build -t hzh/nestapi:v1 .

因为要拷贝node_modules,比较慢

4.运行容器

docker run -d -p 3002:3002 --name nestapiv1 hzh/nestapi:v1

5.查看容器

docker exec -it 4e75d857045a bash

6.发现报错查看日志

docker logs -f 4e75d857045a

7.需要修改容器内的配置文件

先将容器内的文件copy到主机,然后修改好了在copy回去

docker cp 4e75d857045a:/var/publish/nest/dist/config/index.js /tmp/

docker cp /tmp/index.js 4e75d857045a:/var/publish/nest/dist/config/

8.成功运行

日志不报错,成功运行

 

参考:

docker 制作node基础镜像运行js项目

https://blog.csdn.net/du771278794/article/details/89851936 

菜鸟学院

https://www.runoob.com/docker/docker-install-node.html

原文地址:https://www.cnblogs.com/langhaoabcd/p/12021717.html