搭建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

# 开放端口
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

docker 部署nestjs应用的更多相关文章

  1. docker部署nodejs项目应用

    之前笔者弄了一套nestjs项目放在自己服务器上,并用pm2管理进程. 现在要把pm2停止,尝试一下用docker容器,那么首先要安装docker 一.安装docker 由于笔者服务器的系统是cent ...

  2. ASP.NET Core开发-Docker部署运行

    ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...

  3. Docker部署Hadoop集群

    Docker部署Hadoop集群 2016-09-27 杜亦舒 前几天写了文章"Hadoop 集群搭建"之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Doc ...

  4. 程序开发使用docker部署

    我们公司自己研发了一套 grand-line 系统,使用 docker 来部署项目. 我是第一批小白鼠,一开始网络差,build 一次要半个小时,连接进入 web shell 也很慢,部署一个微信项目 ...

  5. 我使用celery以及docker部署遇到的问题

    首先我本机测试时没有问题的,但是在线上docker中,任务一直显示 "Sending due task".超时的任务是 django orm update 操作,本地不会出现这样的 ...

  6. Docker部署SDN环境

    2014-12-03 by muzi Docker image = Java class Docker container = Java object 前言 5月份的时候,当我还是一个大学生的时候,有 ...

  7. 在生产环境使用Docker部署应用

    导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...

  8. Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈

    版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98 来源:腾云阁 https://www.qclou ...

  9. NET Core Docker部署

    NET Core Docker部署 前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行 ...

随机推荐

  1. 模板模式(Template Pattern)

    模板模式(Template Pattern) -- 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中.Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤. ...

  2. Self寄宿

    static void Main(string[] args) { //Assembly.Load("WebApplication1, Version=1.0.0.0, Culture=ne ...

  3. ubuntu16.04环境下在docker上部署javaweb项目简单案例

    因为一些原因,接触到了docker,经过一番研究,总算是有了一些自己的看法,有什么不对的地方,希望多多指教. 废话不多说,首先我这里使用的虚拟机安装的是ubuntu16.04版本,其他版本应该也可以. ...

  4. ABAP Netweaver体内的那些寄生式编程语言

    今天这篇文章的主题是:寄生. Jerry最近看到朋友圈里一位朋友分享的一张寄居蟹的照片,对于Jerry这种在内地长大的又很宅的人来说,没有机会看到寄居蟹,所以觉得很新鲜: 寄居蟹主要以螺壳为寄体,寄居 ...

  5. C#-MailHelper

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. c# 接口实现

  7. RestFramework之解析器

    一.什么是解析器? 对请求的数据进行解析 - 请求体进行解析. 解析器在你不拿请求体数据时 不会调用. 安装与使用: https://www.django-rest-framework.org/ 官方 ...

  8. Springboot整合cxf后不能访问controller,不能访问接口

    参考版本 springboot 1.4.X <=========> cxf-spring-boot-starter-jaxws 3.1.X springboot 1.5.X <=== ...

  9. ubuntu---记录.重装电脑之设置电脑信息

    (1)设置网络(2)安装一个中文输入法(3)CUDA+驱动+cuDNN+添加到系统环境中(4)禁止内核更新(5)安装好opencv之后,查看安装的版本(6)查看自带的python版本(7)设置系统里p ...

  10. ES6 Class(类)的继承与常用方法

    一.ES6 类的定义 ES5 构造函数的写法: function Point(x, y) { this.x = x; this.y = y; } ES6 引入了 Class(类),通过class关键字 ...