快捷导航

如何使用Docker容器化Node.js应用程序

原作者: 人工智能 收藏 分享 邀请

导读:集装箱化的应用程序在当今世界越来越受欢迎,因为它们可以解决几乎每个项目团队面临的一些主要问题。在本文中,我将向您展示如何使用Docker来容纳您的node.js应用程序。继续之

集装箱化的应用程序在当今世界越来越受欢迎,因为它们可以解决几乎每个项目团队面临的一些主要问题。

AI人工智能网

在本文中,我将向您展示如何使用Docker来容纳您的node.js应用程序。继续之前,请确保您的计算机上安装了Docker。

https://www.docker.com/products/docker-desktop

完成安装过程后,打开Docker Desktop(保持后台运行)并运行Docker版本以验证安装是否完成。

在本教程中,我使用了一个依赖较少的基本node.js应用程序,但是在您的项目中,您可能有一个比我更依赖的高级node.js应用程序。

首先,让我们看看app.js文件。

const express = require(“express”);const app = express();app.listen(3000,()=> { console.log('侦听端口3000上的请求');});app.get('/',(req,res) => { console.log('发出请求');res.send(《你好,世界!》);});在这里,我所做的基本上是,用express创建一个简单的node.js服务器。但是您也可以选择不使用express node.js服务器,如下所示:

const http = require(' http ');const server = http . CreateServer(req,res) => { console.log('请求已发出');//在此设置响应。设置标题(“内容类型”、“文本/普通”);写下“你好,世界!”);RES . end();});server.listen(3000,“0.0.0.0”),()= > { console . log(‘监听端口3000上的请求’);});您的package.json可能如下所示。因为这是基本的package.json文件,所以它不再包含任何依赖项。但就你而言,你可能比我更依赖我。

好了,是时候创建文件了。只需在文件夹中打开一个新文件,并将其命名为Dockerfile。您可以使用任何您喜欢的文本编辑器来创建它。请看下面我用于这个项目的文档文件,你可以根据需要编辑它。

从节点:10 //我们为项目指定所需的映像名称:WORKSDIR/usr/src/app//设置工作目录的路径:COPY包*。运行NPM安装安装所有依赖项复制...//复制我们项目中的所有其他文件EXPECT 3000//打开应用程序运行CMD的端口[“节点”、“应用程序. js”]//在这里,您可以输入运行应用程序的命令。现在一切准备就绪。接下来,我们将使用Dockerfile来构建Docker映像。打开您的终端并运行以下命令来构建您的docker映像,确保您的路径设置为终端中的项目文件夹。

码头工人大楼。-t hello-world注意:hello-world是我们码头工人形象的名称

这可能需要一些时间,因为它需要从Docker Hub提取节点映像,并完成您在Dockerfile中提到的所有步骤。过程完成后,您可以从这个码头工人图像构建一个容器。运行以下命令,并确保端口映射正确。

C1 hello-world注意:您可以选择自己喜欢的港口。端口8080属于我们的本地机器,我们的应用程序在端口3000上运行,c1是容器的名称,hello-world是docker的图像

现在您的容器将开始运行,您可以在浏览器中查看您的应用程序。在此之前,在您的终端中运行码头工人,并验证您的集装箱已经开始运行。验证之后,您还可以通过在终端上发出命令docker port c1(这里,c1是您的容器的名称)来检查端口。

C1港口码头工人> > 3000/TCP-> 0.0.0: 8080现在打开浏览器,输入本地主机:8080,然后您将在浏览器中看到node.js的应用程序响应。

摘要

恭喜你!您已经使用Docker完成了Node.js应用程序的容器化。

最好让自己熟悉这些概念,不要忘记尝试用Docker来封装您的应用程序。

[负责编辑:赵宁宁电话:(010) 68476606]喜欢集装箱节点


推荐阅读:

      如何使用Docker容器化Node.js应用程序

本文转载至网络-如有侵权请联系管理员删除,给您带来的不便很抱歉!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

本文作者2020-9-5 03:00 PM
人工智能
粉丝1 阅读41 回复0

精彩阅读

排行榜

人工智能公众号

扫码微信公众号
我陪你畅想未来

最智能的人工智能网!
QQ:162057003
周一至周五 9:00-18:00
意见反馈:162057003@qq.com

扫一扫关注我们

Powered by Discuz! X3.4   © 2020 ( 鲁ICP备18055727号 )  |  |网站地图