宿主机(host)上修改iptables 规则,开放容器的响应端口;参考网上的命令
iptables -t nat -A DOCKER -p tcp -dport 8080 -j DNAT --to-destination 172.17.0.2:8080
当我们创建nginx镜像时,并且启动nginx时,我们只能在容器内部区访问nginx的网址。所以为了容器之外能访问,需要暴露端口,也就需要了将容器内部的端口映射出去。
docker容器暴露端口的形式有四种:
将指定的容器端口映射到宿主机所有地址的一个随机端口
2、-p :
将容器端口映射到指定的主机端口
3、-p ::
将容器端口映射到主机指定ip的随机端口
4、-p ::
将容器端口映射到指定主机ip的指定端口
方法一docker commit docker run -p containerid通过以上命令创建新的镜像文件,run -p参数开放新端口出来;实际使用上不方便。方法二宿主机(host)上修改iptables 规则,开放容器的响应端口;参考网上的命令iptables -t nat -A DOCKER -p tcp -dport 8080 -j DNAT --to-destination 172.17.0.2:8080当我们创建nginx镜像时,并且启动nginx时,我们只能在容器内部区访问n
最近在工作时遇到一个问题,
docker
容器
无法访问宿主机的redis,telent6379
端口
不通。
经排查发现,该服务器启用了防火墙,防火墙把6379的
端口
的访问授权给
docker
0网卡访问即可。
操作如下:
firewall-cmd –permanent –zone=trusted –change-interface=
docker
0
firewall-cmd –reload
补充知识:
docker
启动mysql
容器
出错Ports are not available: listen tcp 0.0.0.0:3306
错误截图如下
该错误是由于本地3306
端口
被占用,很可能是本地已经
1.问题描述
docker
下的oracle数据库服务存在漏洞,解决难度较高,于是通过firewalld限制高危
端口
开放
,只允许本机访问。发现即使firewalld把oracle 1521漏洞不
开放
出去,但其他服务器依然能访问这给服务器的1521
端口
,也就是说firewalld配置的规则失效。
2.解决办法
docker
配置文件中添加 “iptables”: false
[root@localhost ~]# vi /etc/
docker
/daemon.json
"data-root": "/op
标题中:REPOSITORY是指镜像仓库 TAG是指版本(latest:最新的) IMAGE ID是指镜像ID号 CREATED是指创建的时间 SIZE是指内存大小
注意:还有一组命令 itd it
Docker
端口
映射即映射
容器
内应用的服务
端口
到本机宿主机器。
当
容器
中运行一些网络应用,要让外部访问这些应用时,可以通过 -P 或 -p 参数两种方式来指定
端口
映射。
1. 随机映射
使用 -P 参数时,
Docker
会随机映射一个
端口
到内部
容器
开放
的网络
端口
,如下
开
启一个 nginx 服务:
$
docker
run -d -P nginx
e93349d539119dc48dc841e117f6388d6afa6a6065b75a5b4aedaf5fb2a051fc
$
docker
ps
CONTAINER ID IMAGE COMMAN
Docker
容器
技术可以很好地解决
端口
占用的问题。当我们在一台服务器上同时运行多个应用程序时,可能会出现多个应用程序需要监听同一
端口
的情况,如果这样的问题不得到解决,将会导致应用程序无法正常启动或者正常工作。而
Docker
容器
技术可以很好地解决这一问题。
在
Docker
中,每个
容器
都有一个独立的网络命名空间,因此它们的网络接口、IP地址和
端口
空间都是相互独立的,
容器
之间的
端口
不会相互干扰。同时,
Docker
也提供了
端口
映射的功能,可以将
容器
内部的应用程序
端口
映射到宿主机器的
端口
上,从而使得外部的网络可以访问
容器
内部的应用程序。在进行
端口
映射时,需要指定
容器
内部的
端口
和宿主机器上映射的
端口
,这样就可以很方便地解决
端口
占用的问题。
总之,
Docker
容器
技术能够让我们更加方便地管理应用程序,避免了因为
端口
占用而导致的应用程序无法正常工作的问题。通过使用
Docker
容器
技术,我们能够更加灵活地部署应用程序,并且可以将多个应用程序运行在同一台服务器上,从而实现更加高效的资源利用和部署。