Docker端口映射实现网络访问
Docker端口映射实现网络访问
首先,大家如果看到有什么不懂的地方,欢迎吐槽!!!
我会在当天或者第二天及时回复,并且改进~~
Docker运行容器之后却发现没IP,没端口,那要如何访问容器呢?
下面我来介绍下Docker通过端口映射来实现网络访问
一、从外部访问容器应用
在启动容器的时候,如果不指定对应参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的。
当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-P或-p参数指定端口映射。
先来说说p和P吧
- -p 可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器
- -P 它会随机映射一个端口至容器内部开放的网络端口(范围不详,似乎都上万)
先申明一下,我这边
client ip address 为192.168.0.225
registry ip address 为192.168.0.216:5000
docker run -d -it --name nginx -P 192.168.0.216:5000/nginx
docker ps -a #查看容器是否在运行
docker logs nginx #查看nginx容器的log
端口映射支持的格式有:
ip:hostport:containerport #指定ip、指定主机port、指定容器port
ip::containerport #指定ip、未指定主机port、指定容器port
hostport:container #未指定ip port、指定主机port、指定容器port
二、映射所有接口ip
下列命令查看到0.0.0.0监听5000端口
docker run -d -it -p 5000:5000 --name registry 192.168.0.216:5000/registry
docker ps -a | grep 5000 多次使用-p标记可以绑定多个端口
docker run -d -it -p 800:80 -p 8088:8080 --name tomcat 192.168.0.216:5000/tomcat
docker ps -a | egrep "(80|8080)"
三、映射到指定地址的指定端口
将容器的80 port映射到192.168.0.225:800
docker run -d -it -p 192.168.0.225:800:80 --name web_server 192.168.0.216:5000/nginx
curl 192.168.0.225:800 #验证是否可以访问默认首页
四、映射到指定地址的udp端口
这里且不说能不能访问,只是一种映射方式。大家别见怪
docker run -d -it -p 192.168.0.225:300:3000/udp --name unknown 192.168.0.216:5000/nginx
netstat -anpu |grep udp
udp 0 0 192.168.0.225:300 0.0.0.0:* 24588/docker-proxy
五、查看映射端口配置
通过docker port container_ID 可以查看到容器映射了哪些端口及协议
[root@docker ~]#docker port tomcat
8080/tcp -> 192.168.0.225:32769
[root@docker ~]#docker port unknown
3000/udp -> 192.168.0.225:300
Docker端口映射实现网络访问相关推荐
- 做了6年的Java,docker端口映射无法外部访问
1.1. 操作系统简介 我通过以下四点介绍什么是操作系统: 操作系统(Operating System,简称 OS)是管理计算机硬件与软件资源的程序,是计算机的基石. 操作系统本质上是一个运行在计算机 ...
- Docker端口映射无法访问的问题排查
概述 前些天,老大让升级Docker版本,后面折腾了一番,成功升级到最新版本Docker,Docker容器啥的都跑起来了,以为一切顺利了,结果第二天就发现容器映射到宿主机的端口无法访问.在宿主机用 c ...
- docker端口映射或启动容器时报错 driver failed programming external connectivity on endpoint quirky_allen
docker端口映射或启动容器时报错 Error response from daemon: driver failed programming external connectivity on e ...
- docker端口映射或启动容器时报错 driver failed programming external connectivity on endpoint
docker端口映射或启动容器时报错 Error response from daemon: driver failed programming external connectivity on en ...
- docker端口映射失效解决方法
docker端口映射失效解决方法 参考文章: (1)docker端口映射失效解决方法 (2)https://www.cnblogs.com/erfsfj-dbc/p/11815972.html 备忘一 ...
- docker端口映射或启动容器时报错Error response from daemon: Container is not running
docker端口映射或启动容器时: docker exec -it 7c5a2350c4cb /bin/bash 出现了错误: Error response from daemon: Containe ...
- docker端口映射,批量删除容器
docker端口映射 http://blog.csdn.net/yjk13703623757/article/details/69212521 批量删除容器 http://blog.csdn.net/ ...
- Docker ❀ 容器内部/外部通信、端口映射、网络模式、自定义容器网络
文章目录 1.网络通讯 命名空间类型 2.网络模式 Docker服务默认存在四组网络模式 3.端口映射 -p : 容器指定端口映射为本地随机端口: -p : 容器指定端口映射为本地指定端口: -p : ...
- docker 端口映射 及外部无法访问问题:开启IP转发从而解决
docker容器内提供服务并监听8888端口,要使外部能够访问,需要做端口映射. docker run -it --rm -p 8888:8888 server:v1 此时出现问题,在虚机A上部署后, ...
- docker端口映射--外网无法访问tomcat容器
1.dockers运行tomcat容器,并进行端口映射到宿主机 docker run -dit --name tomcat01 -p 28080:8080 tomcat 2.外网访问tomcat 映射 ...
最新文章
- 一个架构师的缓存修炼之路
- swift:使用协议protocol设置颜色,UIImage的切圆角ImageWithCornerRadius
- putty 显示 ubuntu的文件乱码
- python学习的一个定位_python学习之——selenium元素定位
- Linux内存管理之内存寻址:分段机制的实现方式
- java解析html_java中几种解析html的工具
- 进程优先级,进程nice值和%nice的解释
- php UUID 分布式生成用不重复的随机数方法
- linux 从设备 spi,在Linux 4.9设备树中添加SPI slave设备rapbery pi
- VUE 拦截浏览器后退弹窗,弹窗一闪立刻消失问题
- 10019---SpringBoot简介
- Kernel space lock contention配置及其使用
- Appium: Windows系统桌面应用自动化测试(一)
- offline强化学习之Revive SDK的使用
- 微信、小程序、h5等实名认证接口
- 你应该了解的 MySQL 细节
- HTML-通过点击网页上的文字弹出QQ添加好友页面
- 【环境篇 npm 报错】npm ERR gyp ERR stack import sys; print “%s.%s.%s“ % sys.version_info[:3];
- php如何获取服务器的信息,PHP获取当前服务器详细信息
- 包python_Python 包的发布