首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >码头端口映射语法

码头端口映射语法
EN

Stack Overflow用户
提问于 2017-06-14 18:02:13
回答 2查看 4.6K关注 0票数 6

我刚接触过docker,对于我遇到的命令,我对下面的命令选项感到有点困惑。

代码语言:javascript
复制
 --name : appname is the name of the image?
 -t : Run in terminal?
 -d : run as daemon?
 -p : for somebody outside the container to talk to port 9090 they have to connect on port 9000?
 Same for port 15501 but it is a udp port?    
 appname2: name assigned to running image?

 docker run -t --name=appname -p 9090:9000 -p 15501:15501/udp -d appname2
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-14 18:15:56

代码语言:javascript
复制
 docker run -t --name=appname -p 9090:9000 -p 15501:15501/udp -d appname2

问:-名称:名称是图像的名称吗?

不是的。它是您要创建的容器的名称(可选)。

代码语言:javascript
复制
--name string           Assign a name to the container

问:-t :在终点站运行?

代码语言:javascript
复制
-t, --tty             Allocate a pseudo-TTY

问:-d :作为守护进程运行?

说大也大吧。这意味着您想要运行您的集装箱与您的码头分离。

代码语言:javascript
复制
-d, --detach          Run container in background and print container ID

问:-p :为了让集装箱外的人与9090港口交谈,他们必须在9000端口上连接?

9090:9000的意思是:主机上的端口9090绑定到容器上的端口9000。要与集装箱港口交谈,外面的人应该与9090交谈。

代码语言:javascript
复制
-p, --publish list       Publish a container's port(s) to the host (default [])

问:端口15501也一样,但它是udp端口吗?

正确的。

问: appname2:指定给运行映像的名称?

这是您正在运行的图像。容器是基于它的顶部的。

奖金!您可以在这里找到所有这些信息:docker help run

奖金2!你自己试试看:

代码语言:javascript
复制
docker run -d -it --name my-container alpine sh
docker inspect my-container
# See all this funny output. It's all about the container that you've created
票数 7
EN

Stack Overflow用户

发布于 2017-06-14 18:46:29

来自https://docs.docker.com/engine/reference/run/

-d标志意味着分离。运行码头容器时,可以在前台运行容器,也可以在后台运行容器。如何运行容器的选择取决于您的用例。例如,如果您运行一个具有某些功能的OS容器,您可能希望在前台运行该容器,以便使用此功能。但是,如果运行DB服务器,则可能需要在后台运行它。

使用-p标志时,会将所有公开的端口发布到主机接口。例如,如果您在一个暴露了一些端口的容器中运行DB服务器,并且希望与服务器进行远程通信,则可能希望将容器内的端口映射到主机系统上选择的单个或多个端口。这样,当您连接到主机上的端口时,您将连接到在其中运行的对接服务器(我希望这是清楚的)。映射格式如下:

代码语言:javascript
复制
ip:hostPort:contain`enter code here`erPort | ip::containerPort | hostPort:containerPort | containerPort

--name标志为正在运行的容器提供了一个很好的名称。如果不使用,它将生成一个名称。例如,如果您以分离模式执行容器,然后希望使用attach命令进入容器,则可以使用它。

-t标志为容器分配文本控制台。

appname2是码头映像的名称。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44551680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档