位置: 编程技术 - 正文
推荐整理分享docker中编译nodejs并使用nginx启动(docker编写dockerfile),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:docker部署nodejs,docker 编写,docker中编译 exe,dockerfile nodejs,dockerfile nodejs,docker中编译nodejs nginx启动,docker中编译的jar怎么推送到宿主机,并神秘项目,docker中编译nodejs nginx启动,内容如对您有帮助,希望把文章链接给更多的朋友!
1.编译Nodejs
要进行Nodejs编译,使用docker就变得非常的方便了。
首先从hub.docker.com下载最新的镜像。 pull node:6-alpine
然后就可以直接使用npm install了。
Alpine是一个非常小的操作系统,在编译,运行docker非常喜欢使用这个系统,因为小,占用磁盘小,下载速度快,部署也快。
节省磁盘空间,节省部署时间。
2.使用docker镜像提前下载库
但是遇到一个问题,就是下载编译的时间太长了。
一般使用nodejs进行开发的时候都有一个package.json 里面具体的项目依赖 包,下载这个依赖需要很长时间。一般使用阿里云的镜像安装。
npm install --registry= 进行构建,编译的时候每次都是要下载这些依赖。大大增加了编译的时间。
可以提前将镜像下载好,然后在编译。做一个基础的镜像。如下:
构建这个基础镜像:
docker build -t my-demo/node6-alpine:latest .
在利用这个镜像进行编译:
然后利用这个基础镜像进行编译,生气了之前的instal 过程。
期中的node_modules是node的模块文件夹。编译后的文件在dist文件夹内。
3.使用nginx启动
首先从 下载一个镜像:
使用nginx镜像启动,直接将node编译后的文件放到html目录
编译docker :
docker build -t my-demo/nginx:latest .
启动docker:
docker run -itd -p : my-demo/nginx:latest
然后直接访问 端口就可以了。
总结:
(首发,请勿转载。)
现在前后端的拆分,可以提高开发效率。但是部署起来稍微麻烦,需要前后的分别进行编译,前端编译也需要很长时间。可以提前将依赖库大成一个node基础镜像,然后再进行编译,这样可以大大的提高编译时间。同时运行环境使用一个nginx,将html,css,js等资源文件都放上,也才多MB。而且在nginx中也可以将后台api在进行配置,将前后端集成进来。同时docker的镜像大大的提高了开发效率,环境的安装问题一下子得到了解决。
创建简单的node服务器实例(分享) 话不多说直接上代码:varhttp=require('http')//对URL解析为对象//1.导入模块URl模块varurl=require('url')varfs=require('fs')varpath=require('path')varmime=require('./mime.js')varqs=re
详解用node.js实现简单的反向代理 之前用node.js实现简单的反向代理,最近需要回顾,就顺便发到随笔上了不多说直接上代码!consthttp=require('http');consturl=require('url');constquerystring=require('que
NodeJS自定义模块写法(详解) 如下所示://1.创建测试模块js文件(我这里命名为test.js)//2.添加测试方法functiontest(){console.log('TestSuccess!');}//3.公开该方法到node模块//exports.test(这个是public
友情链接: 武汉网站建设