开发者社区 > 弹性计算 > 云服务器ECS > 正文

服务器创建的docker项目内网无法访问

已解决

在服务器上搭建docker项目,内网输入ip却无法访问

展开
收起
heixiui 2023-09-05 15:14:28 234 0
4 条回答
写回答
取消 提交回答
  • 十分耕耘,一定会有一分收获!
    推荐回答

    这种情况可能是由于阿里云服务器的网络安全组规则未正确配置导致的。请按照以下步骤检查和配置防火墙和安全组规则:

    1. 登录阿里云控制台,进入服务器实例页面,点击实例名称进入“实例详情”页面。

    2. 在“实例详情”页面中,点击左侧菜单栏中的“安全组”。

    3. 在“安全组规则”页面中,确保已经添加了端口映射规则,如开启80和443端口。

    4. 如果已经添加了端口映射规则并且仍然无法访问,请检查防火墙规则是否正确配置。您可以通过以下命令查看网络安全组规则和iptables规则:
      image.png

      sudo iptables -L -n
      sudo iptables -t nat -L -n
      
    5. 如果防火墙规则不正确,请使用以下命令更新:
      image.png

      sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
      sudo iptables -A INPUT -i eth0 -p tcp -m tcp --dport 443 -j ACCEPT
      sudo service iptables save
      
    6. 如果您使用的是CentOS 7,您还需要更新firewalld规则:
      image.png

      sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
      sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
      sudo firewall-cmd --reload
      
    7. 重新启动docker服务:
      image.png

      sudo systemctl restart docker
      
    8. 确认更新后,您应该能够通过内网IP访问您的docker项目了。

    2023-09-06 08:39:21
    赞同 展开评论 打赏
  • 如果您在服务器上搭建了一个Docker项目,并且无法通过内网IP进行访问,可以尝试以下排查步骤和解决方法:

    1. 检查容器网络设置:确保Docker容器的网络设置正确。使用命令 docker inspect <container_id> 来查看容器的详细信息,确认容器的网络配置是否正确。

    2. 检查端口映射设置:如果您在容器内部运行的应用程序监听了某个特定的端口,确保在启动容器时进行了端口映射。例如,使用 -p <host_port>:<container_port> 参数来将容器的端口映射到主机的端口。

    3. 防火墙设置:检查服务器的防火墙设置,确保所使用的端口没有被防火墙屏蔽。如果有需要,请允许相应的端口通过防火墙。

    4. 内网路由配置:如果您是在内网环境中进行访问,确保网络路由设置正确。检查网络设备(如路由器)的配置,确保请求能够正确地转发到服务器的内网IP地址。

    5. 环境变量设置:一些应用程序可能需要配置特定的环境变量才能正常运行。确保您已经设置了必要的环境变量,并检查这些环境变量是否正确传递给了Docker容器。

    6. 日志和错误信息:查看容器的日志信息,以获取更多有关访问失败的详细错误信息。使用 docker logs <container_id> 命令来查看容器的日志输出。

    2023-09-05 21:15:47
    赞同 展开评论 打赏
  • 从事java行业9年至今,热爱技术,热爱以博文记录日常工作,csdn博主,座右铭是:让技术不再枯燥,让每一位技术人爱上技术

    您好,云服务器ECS内网地址无法访问的话,可能是内网ip不是云服务器ECS的白名单用户,建议您可以创建安全组,通过安全组的入方向规则控制ECS实例的入站流量,出方向规则控制ECS实例的出站流量,
    image.png

    2023-09-05 19:19:02
    赞同 展开评论 打赏
  • 介绍如何在云服务ECS实例上,部署并使用Docker。

    前提条件
    已创建一台基础ECS实例,并满足以下配置。如果您还未创建,请参见自定义购买实例。

    操作系统:CentOS 7.x 64位、CentOS 8.x 64位、Alibaba Cloud Linux 3 64位、Alibaba Cloud Linux 2 64位

    网络类型:专有网络VPC

    IP地址:公网IP

    安全组:入方向开放80、22、8080端口。具体操作,请参见添加安全组规则。

    远程连接ECS实例。
    关于连接方式的介绍,请参见连接方式概述。
    安装Docker。

    image.png

    如果执行命令,出现类似下图的报错信息,您需要注释/etc/yum.repos.d下的CentOS源,注释后重新安装docker-ce。

    9431bc200b5adc1d5293b2e7a267d3f1_p477222.png

    执行以下命令,检查Docker是否安装成功。

    sudo docker -v

    如下图回显信息所示,表示Docker已安装成功。

    8cb54a1d3012fbc39b3516cf4bcc2f24_p683254.png

    执行以下命令,启动Docker服务,并设置开机自启动。

    sudo systemctl start docker
    sudo systemctl enable docker

    执行以下命令,查看Docker是否启动。

    sudo systemctl status docker

    如下图回显所示,表示Docker已启动。

    07e5fcf3be716a2742c0faf69ba11491_p679571.png

    2023-09-05 15:32:48
    赞同 展开评论 打赏

云服务器ECS是一种安全可靠、弹性可伸缩的IaaS级云计算服务。在这里你可以获取最新的ECS产品资讯、最前沿的技术交流以及优惠活动等信息,加速自己的技术成长。

相关产品

  • 云服务器 ECS
  • 相关电子书

    更多
    应用 Docker 进行持续交付:用技术改变交付路程 立即下载
    从Docker到容器服务 立即下载
    构建基因数据应用生态系统—— docker in Bio/informatics 立即下载