docker安装nginx之后无法访问

这篇具有很好参考价值的文章主要介绍了docker安装nginx之后无法访问。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

今天安装完nginx 之后,容器可以正常启动,但是在Linux 与外面浏览器无法访问,但是进入容器内部,可以正常访问nginx\

代码示例

# 运行nginx
 docker run --name nginx-test -p 8081:80 -d nginx
# 查看容器id
 docker ps

查看容器内部ip地址

docker inspect e59d18a16a78 | grep IPAddress     
            "SecondaryIPAddresses": null,
            "IPAddress": "172.17.0.2",
                    "IPAddress": "172.17.0.2",
curl 172.17.0.2

这个时候直接就链接不上

进入容器内部可以正常访问

[root@localhost vmuser]#  docker exec -it e59d18a16a78 bash
root@e59d18a16a78:/# curl 127.0.0.1
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

解决方案:

  1. 查看是否关闭防火墙
   systemctl status firewald.service 
  1. 查看是否有暴漏ip地址
1)lsof -i :8080 查看8080端口被哪个进程占用

2)netstat -lnp|grep 8080 查看8080端口被哪个进程占用
 
3)ss -nlap | grep 8080 查看8080端口被哪个进程占用
  1. 有可能是linux 版本与docker 版本不兼容(此方法解决)
# uname -a
# lsb_release -a  
    Distributor ID: CentOS
    Description:    CentOS Linux release 7.2.1511 (Core) 
    Release:        7.2.1511
# docker version 
    Client: Docker Engine - Community
    Version:           20.10.17

升级版本内核文章来源地址https://www.toymoban.com/news/detail-547822.html

#升级linux内核版本,升级所有包同时也升级软件和系统内核
[root@localhost ~]# yum update -y

到了这里,关于docker安装nginx之后无法访问的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker启动容器服务之后访问失败

    注:在进行docker容器启动宿主机进行容器访问时,无需进行网络的配置,docker容器在启动时会自动解决 第一种原因及修改方法 在进行启动的时候,启动语句中没有进行端口映射,导致在进行访问的时候无法找到正确的端口 正确的镜像的启动方式为 正常容器启动后的截图 进

    2024年02月02日
    浏览(40)
  • Mac Docker安装配置nginx,配置代理前端访问服务器后端访问本地启动项目

     或者直接通过docker客户端查看 --name NginxTest:容器名称 -p 8080:8080:映射端口 -d nginx:设置容器后台运行  docker客户端查看 1)全局块:配置服务器整体运行的配置指令 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,

    2024年02月02日
    浏览(60)
  • 【Ubuntu】安装chrome之后无法启动

    命令行运行 报错 Note:显然,上面的错误信息告诉我们,chrome会记录我们在计算机上的操作数据在本地,然后我们 修改主机名 后,导致老数据被锁住了,这样新的主机名下chrome无法获取用户对应的浏览器数据,因此chrome无法正常启动,并且在UI上还无法看到相关错误,导致假

    2024年02月05日
    浏览(55)
  • 【Nginx】启动成功无法访问网页(完整的排除方案)

    👉【Nginx】启动成功无法访问网页(完整的排除方案)_nginx启动成功但是无法访问_渐暖°的博客-CSDN博客 阿里云服务器 直接设置安全组—添加端口。 

    2024年02月07日
    浏览(48)
  • docker启动rabbitmq无法访问15672端口

    1.问题说明 使用rabbitmq:3.8.14版本启动了rabbitmq容器,5672、25672端口都可以连接,唯独15672仅在服务器本地可被连接。 2.问题原因 rabbitmq:3.8版本开始,管理插件包含在RabbitMQ发行版中。与其他任何插件一样,必须先启用它,然后才能使用它。这是使用rabbitmq-plugins完成的: 执行此

    2024年02月16日
    浏览(40)
  • SpringBoot服务启动了,但通过http://ip:port/不能访问 (windows、linux)

    无法启动首先确认一下对应的端口有没有开放。正常服务器上需要开启防火墙的情况下,需要通过开放对应端口来实现项目访问。 systemctl status firewalld   #查询防火墙状态 firewall-cmd --query-port=1986/tcp  #查询某端口的TCP协议是否开放 防火墙处于Active状态即表示防火墙是开启

    2024年02月16日
    浏览(31)
  • (五)在docker中添加nginx端口映射(解决docker中的nginx无法访问除80端口以外的问题)

    问题描述: 我们在docker中开启nginx以后,如果这时候在nginx中配置除了80以外的端口的监听,会发现无法访问,这时候其实是因为我们没有开启端口映射导致的。 这个时候,我们可以采用修改配置文件的方式去添加端口映射,具体步骤如下: 首先先关闭docker,否则修改配置文

    2023年04月08日
    浏览(36)
  • Docker 容器正常启动但通过ip加端口无法访问

    前置条件:使用的阿里云轻量云服务器,ECS服务器应该也是类似的。 问题排查过程 排查linux服务器本身的防火墙是否开启,查看后是关闭的。 排查轻量云服务器的安全组是否将端口加入安全组,否则也是无法访问的,端口已加入安全组,可以排除这个问题。 通过tcping等端口

    2024年02月08日
    浏览(37)
  • CentOS 7安装docker 及docker 不能被外网访问的问题

    uname -r 查看linux内核版本。要求linux内核版本是3.1.0以上。 netstat -tuln | grep 53  查看端口 以下是下载最新的docker的方式: 对于 CentOS 系统: 安装所需的软件包: sudo yum install -y yum-utils device-mapper-persistent-data lvm2 2.设置 Docker 的存储库: sudo yum-config-manager --add-repo https://downlo

    2024年02月04日
    浏览(41)
  • 解决docker容器之间网络互通 启动web服务只能本地localhost访问无法从外部访问

    docker容器之间相互访问 1.查看当前的网络 Copy [root@host ~]# docker network ls NETWORK ID          NAME                DRIVER              SCOPE 3dd4643bb158        bridge              bridge              local 748b765aca52        host                host                local 4d59a0cd3ff

    2024年02月10日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包