【Docker学习总结】16.Docker容器与外网的连接

一、容器访问外部网络

     容器要想访问外部网络,需要本地系统的转发支持。在Linux 系统中,检查转发是否打开。

     

   如果为 0,说明没有开启转发,则需要手动打开。

 sysctl -w net.ipv4.ip_forward=1

二、容器访问控制

     容器的访问控制,主要通过 Linux 上的 iptables 防火墙来进行管理和实现。 iptables 是 Linux 上默认的防火墙软件,在大部分发行版中都自带。

                              

    每一个大的方块中,就是iptables中的一个链(chain),每一个链实际上就是数据处理中的一个环节,而在每个环节中又包含了不同的操作。

三、容器的端口映射

启动容器

Ctrl+p Ctrl+q退出容器

查看端口映射、并使用curl访问nginx界面

查看iptables规则:

我们可以看到DOCKER链中多了一个关于cct5容器的映射,这样就允许外部网络访问这个容器

查看本机ens33的ip地址:

在另外一台虚拟机上访问上面虚拟机上开启的nginx服务:

可以看到访问成功了,外部网络也可以访问docker容器!

四、限制IP访问docker容器

启动容器

Ctrl+p Ctrl+q退出容器

添加规则,限制特定ip对docker容器的访问:

查看iptables规则是否添加成功:

已经添加成功

查看端口映射:

查看本机IP:

 

在另外一台虚拟机上,访问上面这个虚拟机上的docker容器开启的nginx服务:

访问失败!所以测试成功!

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值