Docker部署WEB 应用时,本地可以成功打开测试页,在公网上(阿里云服务器)却竖伍不能打开。
成都地区优秀IDC服务器托管提供商(创新互联).为客户提供专业的成都服务器托管,四川各地服务器托管,成都服务器托管、多线服务器托管.托管咨询专线:028-86922220
1、环境:阿里云服务器帆升
2、CentOS7系统
3、Docker成功部署
这里前提docker 已经成功部署啦,现有有一个简单的测试案例,在docker上部署一个应用从而访问web。
接下来让我们尝试使用 docker 构建一个 web 应用程序。
我们将在docker容器中运行一个 Python Flask 应用来运行一个web应用。
通过 -p 参数来设置一样的端口态纤老:
docker ps 查看正在运行的容器
容器内部的 5000 端口映射到我们本地主机的 5000 端口上。
这时我们可以通过浏览器访问WEB应用
访问失败
指定外网端口为5000,
1. 本地测试能否打开测试页
本地没有问题。
2. 浏览器中访问
在任意一台电脑上输入公网IP+端口号 (此端口号为运行WEB应用时指定的端口号5000) 如我的阿里云公网IP为123.11.11.11 此时在任意一台有网络的浏览器地址栏输入公网IP: 应该会出现测试页
但现在出现如下图所示:
显示打不开
查啦大量资料,以前曾经也解决过,一定弄明白自已购买的地区后,再去设置安全组的配置规则。
***1. 登录阿里云管理控制台****
2.找到云服务器ECS-概览
3. 点击云服务器ECS,这个是我购买的类型,其他类型的就不清楚啦。
4. 点击本安全组后,再次点击配置规则:
5. 手动添加端口5000
6. 最后保存,再从浏览器地址栏输入公网IP加端口号3344成功显示测试页如图:
方法1.阿里云控制台安全组设置搭哪腊。
登陆你的阿里云账户-管理控制台-云服务器ECS-安全组缓宏设置-配置规则-公网入方向知滑-在这里添加22的端口访问规则,统一设置为拒绝即可,ip地址不用管。
方法2.使用iptables来禁止端口
使用iptables是做运维的孩纸们最基本要掌握的,相信各位都会,因此这里不再列出方法。
1、首先登陆阿里云网站,进入控制台,点击云服务zhi器ECS,进入服务器控制台,点击要选择的服务器。
2、进入服务器实例列表,找到想要增加端口的实例,点击后面的更多,再点击网络和安全组,在选择安全组配置春消按钮谨蚂。
3、点击更多后列表中找到安全组配置,并点击规则。
4、跳转到的页面里,如果想添加新的端口就点击手动添加。
5、在弹出窗口中输入内容,比如添加22端口,就在端口范围里输入以22/22, 在授权对象里输入“0.0.0.0/0”意思是允许所有访问 。
6、点击确定后看看安全组规则中是否多了一个22的端口,就设置成功了。
步骤1 vim /etc/ssh/sshd_config;
修改端口号
步骤2 执行/etc/init.d/sshd restart
这样SSH端口将同时工作与22和1022上
步骤3 现在编辑防火墙配置:
添加 -A INPUT -m state --state NEW -m tcp -p tcp --dport 1022 -j ACCEPT
重启防扒晌知火墙服务:
步骤4 现在请使用ssh工具连接1022端口,来测试是否成功。