Tan*_*Ang 639
要暴露一个端口,这是您需要做的:
docker run -p <host_port>:<container_port>
Run Code Online (Sandbox Code Playgroud)
要公开多个端口,只需提供多个-p
参数:
docker run -p <host_port1>:<container_port1> -p <host_port2>:<container_port2>
Run Code Online (Sandbox Code Playgroud)
mai*_*mer 250
在您的中Dockerfile
,您可以使用动词EXPOSE
来公开多个端口.
例如
EXPOSE 3000 80 443 22
Run Code Online (Sandbox Code Playgroud)
然后,您想基于上面构建一个新图像Dockerfile
.
例如
docker build -t foo:tag .
Run Code Online (Sandbox Code Playgroud)
然后可以使用-p
映射主机端口与所述容器端口,如在上面所定义EXPOSE
的Dockerfile
.
例如
docker run -p 3001:3000 -p 23:22
Run Code Online (Sandbox Code Playgroud)
如果您想公开一系列连续端口,可以像这样运行docker:
docker run -it -p 7100-7120:7100-7120/tcp
Run Code Online (Sandbox Code Playgroud)
Ras*_*lam 25
如果您使用docker-compose.yml
文件:
services:
varnish:
ports:
- 80
- 6081
Run Code Online (Sandbox Code Playgroud)
您还可以指定主机/网络端口
varnish:
ports:
- 80:80
- 6081:6081
Run Code Online (Sandbox Code Playgroud)
以此为例:
docker create --name new_ubuntu -it -p 8080:8080 -p 15672:15672 -p 5432:5432 ubuntu:latest bash
Run Code Online (Sandbox Code Playgroud)
查看您创建的内容(并复制其容器 ID xxxxx):
docker ps -a
Run Code Online (Sandbox Code Playgroud)
现在写下奇迹创造者的话(开始):
docker start xxxxx
Run Code Online (Sandbox Code Playgroud)
祝你好运
小智 5
仅补充一点。您可以选择指定要在 dockerfile 中以及运行时公开的端口范围:
在 dockerfile 上:
EXPOSE 8888-8898
Run Code Online (Sandbox Code Playgroud)
构建镜像:
docker build -t <image_name>:<version> -f dockerfile .
Run Code Online (Sandbox Code Playgroud)
运行镜像时:
docker run -it -p 8888-8898:8888-8898 -v C:\x\x\x:/app <image_name>:<version>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
233517 次 |
最近记录: |