您现在的位置是:热点 >>正文

云计算核心技术Docker教程:将 Node.js 的镜像作为容器运行

热点3615人已围观

简介...

容器是一个普通的操作系统进程,只是这个进程是隔离的,有自己的文件系统,自己的网络,以及与主机分离的自己的隔离进程树。

要在容器内运行映像,我们使用该docker run命令。该d云计ocker run命令需要一个参数,即图像名称。让我们启动我们的图像并确保它正确运行。在终端中执行以下命令。

$ docker run node-docker

当您运行此命令时,您会注意到您没有返算核回到命令提示符。这是因为我们的应用程序是一个 REST 服务器,它将在循环中运行,等待传入的请求,而不会将控制权返回给操作系统,直到我们停止容器。

让我们打开一个新终端,然后使用 c心技url 命令向服务器发出 GET 请求。

$ curl --request POST \

--url http://localhost:8000/test \

--header 'content-ty术Dpe: application/json' \

--data '{"msg": "testing"}'

curl: (7) Failed to connect to localhost port 8oc000: Connection refused

我们的 curl 命令失败,因为与我们的服务器的连接被拒绝。这意味着我们无法在端口 8000 上连接到 localhost。这是意料之中的,因为ke我们的容器是独立运行的,包括网络。让我们停止容器并使用我们本地网络上发布的端口 8000 重新启动。

要停止容器,请按 ctrl-c。这将使您返回到终端提示。

要为我们的容器发布端口,我r教们将在 docker run 命令上使用--publish标志(-p简称)。--publish命令的格式为[host port]:[container port]. 因此,如果我们想将容器内程:的端口 8000 暴露给容器外的端口 3000,我们会将 3000:8000 传递给 --publish 标志。

启动容器并将端口 8000 暴露给主机上的端口 8000。

$ docker run --pub将 lish 8000:8000 node-docker

现在让我们从上面重新运行 curl 命令。记得打开一个新的终端。

$ curl --request POST \

--url http://loNocalhost:8000/test \

--header 'content-type: application/json' \

--data '{"msg": "testing"}'

&de#123;"code":"success","payload":[{"msg":"testing","id":"dc0e2c2b-793d-433c-8645-b3a553e.ja26de","createDate":"2020-09-01T17:36:09.897Z"}]}

成功!我们能够在端口 8000 上连接到在容器内运行的应用程序。切换回运行容器的s 终端,您应该会看到 POST 请求记录到控制台。

2020-09-01T17:36:09:8770 INFO: POST /test

按 ctrl-c 停止容器。

Tags:

相关文章

  • 分析师称苹果造车或面临挑战:高投入低回报

    热点

    据报道,本周一,外媒报道称苹果有可能将在2024年开始生产电动汽车,新车将使用苹果自己研发的电池技术。这个报道重燃了外界对苹果汽车业务的兴趣,2015年的时候,媒体首次报道称苹果有意进军汽车行业,但是...

    【热点】

    阅读更多
  • 桑葚是碱性还是酸性

    热点

    哪些食物含碱性多?E.属于热性的碱性食物有:大蒜、辣椒、胡椒意见建议:水果类碱性食物大全A.属于寒性的碱性食物有:猕猴桃、柿子、桑葚、无花果、甘蔗、香蕉、荸。桑葚属性?桑葚属于碱性食材。食物的酸碱性不...

    【热点】

    阅读更多
  • 标签: 美团 钱江摩托 OTA锁电 AcFun

    热点

    Hello,大家早上好,又是元气满满的一天,先来浏览新鲜的早报吧~ 【平台取消超时扣款】 美团、淘宝闪购、淘宝天猫、京东、滴滴、高德、T3、百度、满帮、货拉拉、拼多多、抖音、携程、去哪儿网等平台积极响...

    【热点】

    阅读更多


友情链接