社区首页 >问答首页 >无法访问任何服务的容器

无法访问任何服务的容器
EN

Stack Overflow用户
提问于 2017-10-28 10:39:39
回答 1查看 217关注 0票数 0

我创建了一个映像:stavalfi/projecty:latest,它是一个非常基本的java spring应用程序。

当我运行一个没有蜂群的容器时,一切都很好:

代码语言:javascript
代码运行次数:0
复制
docker run -d -p 8081:8080 --name container1 stavalfi/projecty:latest

使用铬:

代码语言:javascript
代码运行次数:0
复制
http://localhost:8081/
http://172.17.0.2:8080/ <<-- the address of the leader (no other nodes in the swarm)

当我使用以下方法创建服务时:

代码语言:javascript
代码运行次数:0
复制
docker service create -p 8080:8080 --name service1 stavalfi/projecty:latest

docker ps
    CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS                    NAMES
    ab8cb85e9750        stavalfi/projecty:latest   "/bin/sh -c '/usr/..."   5 minutes ago       Up 5 minutes        0.0.0.0:8081->8080/tcp   container1
    8928604253ed        stavalfi/projecty:latest   "/bin/sh -c '/usr/..."   21 minutes ago      Up 21 minutes       8080/tcp                 service1.1.uhpsxn9mke7fkfwpgwke8ugnt
    e312e148de87        nginx:latest               "nginx -g 'daemon ..."   24 minutes ago      Up 24 minutes       80/tcp                   web.1.zfihms3t4cy3h489srbfgrbw3

我无法打开我的容器,也无法从chrome访问我的应用程序:

代码语言:javascript
代码运行次数:0
复制
http://localhost:8080/ <<-- no answer
http://10.0.2.15:8080/ <<-- response:
Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Sat Oct 28 18:24:26 UTC 2017
There was an unexpected error (type=Internal Server Error, status=500).
8928604253ed: 8928604253ed: Name or service not known

http://10.0.2.15:8080/error  <<-- response:
Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Sat Oct 28 18:25:34 UTC 2017
There was an unexpected error (type=None, status=999).
No message available

我还通过运行以下命令创建了nginx:最新服务:

代码语言:javascript
代码运行次数:0
复制
docker service create -p 80:80 --name web nginx

http://10.0.2.15:80/ <<-- working
http://localhost:80/ <<-- not working

java spring引导控制器代码:

代码语言:javascript
代码运行次数:0
复制
@RestController
public class HelloController {

    @RequestMapping("/")
    @SneakyThrows
    public String index() {
        String hostname = InetAddress.getLocalHost().getHostName();
        return "Hostname: "+hostname+ "! Greetings from Spring Boot!";
    }
}

问题:

  1. 我如何访问我的stavalfi/projecty:来自本地主机的最新服务:8080和10.0.2.15:8080 (领袖ip)?
  2. 我如何从本地主机:8080访问ngrix服务,而不仅仅是从10.0.2.15:8080 (领袖ip)访问?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-28 13:15:09

我使用下面的命令打印正在运行的容器的日志(使用stavalfi/projecty:最新图像):

代码语言:javascript
代码运行次数:0
复制
docker logs <docker container name/id>

我看到我的服务器找不到他的主机名,所以他处理了每个HTTP请求。奇怪的是,当我运行服务时,容器id并没有添加到/etc/host文件中,而是在运行容器时将containerID添加到/etc/host文件中。

如果有人知道的话我很想知道为什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46993188

复制
相关文章
docker容器无法访问宿主机
我用的网络模式是bridger模式。启动docker时,docker进程会创建一个名为docker0的虚拟网桥,用于宿主机与容器之间的通信。当启动一个docker容器时,docker容器将会附加到虚拟网桥上,容器内的报文通过docker0向外转发。如果docker容器访问宿主机,那么docker0网桥将报文直接转发到本机,报文的源地址是docker0网段的地址。而如果docker容器访问宿主机以外的机器,docker的SNAT网桥会将报文的源地址转换为宿主机的地址,通过宿主机的网卡向外发送。
dogfei
2020/07/31
4.5K0
docker 无法访问内部容器暴露ip
docker run -p 0.0.0.0:15672:15672 -p 0.0.0.0:5672:5672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITM
用户6093308
2021/10/06
1.6K0
无法访问docker容器内的flask端口,Connection refused
1、通过 docker inspect CONTAINERID | grep Address 查看容器的ip
lovelife110
2021/01/14
3.4K0
解决docker容器无法访问宿主机网络的问题
    我们项目的监控体系比较完善,所以领导有要求的拨测接口,我就另外安装了一个zabbix,为了在操作主机不影响那么多东西,我们用的是docker版。
一夕如环
2021/03/17
10.8K0
docker内部服务无法访问外网
内网ubuntu机器通过nginx搭建的正向代理访问外网,但是部署在这些内网ubuntu系统之上的docker容器仍然无法访问外网,这里仅以docker-compose的部分配置来说明如何解决这个问题,如下所示:
johnhuster的分享
2022/03/28
2.6K0
docker swarm部署的docker服务无法访问外部的postgresql
在使用portainer(docker swarm)方式部署thingsboard集群服务时发现tb-node节点无法访问外部的postgresql服务,通过docker logs containerId查看日志,找到了有效的日志:NO ROUTE TO HOST,通过docker exec -it containerId进入docker内部,执行ping postgresql服务Ip确实ping不通,但是却可以ping通其他ip。
johnhuster的分享
2022/03/28
1.8K0
docker swarm部署的docker服务无法访问外部的postgresql
TKE集群pod内无法访问集群外cvm自建容器
使用tke产品的客户,经常会遇到GlobalRouter网络模式下tke集群内的pod无法访问集群外cvm自建docker容器服务,cvm节点也无法集群内pod服务,vpc-cni网络模式下集群是没有这个问题的。
聂伟星
2021/09/18
1.3K1
Laravel神奇的服务容器
Laravel的核心是IocContainer, 文档中称其为“服务容器”,服务容器是一个用于管理类依赖和执行依赖注入的强大工具,Laravel中的功能模块比如 Route、Eloquent ORM、Request、Response等等等等,实际上都是与核心无关的类模块提供的,这些类从注册到实例化,最终被我们所使用,其实都是 laravel 的服务容器负责的。
KevinYan
2019/10/13
1.6K0
Dubbo无法访问远程Zookeeper已注册服务的问题
使用Dubbo的时候发现当Zookeeper、Dubbo-admin、生产者和消费者都在 内网中的时候,生产者的生产和消费是没有问题的,但是当它Zookeeper、生产者放到远程服务器上,然后消费者在访问消费就出现了无法找到找到服务的问题。
MonroeCode
2018/01/10
4.1K0
一次 k3s 容器无法访问外网分析
k3s 边缘集群容器无法与外网建连,现象是发出去的 SYN 包没有收到回复 SYN+ACK 的包,但在物理机上一切正常,ping 和 curl 都可以成功。
挖坑的张师傅
2023/09/27
5910
一次 k3s 容器无法访问外网分析
Docker - 解决创建 tomcat 容器镜像却无法访问页面的问题
问题背景 查看 tomcat 镜像 docker images 运行并创建 tomcat 容器 docker -d -p 8888:8080 --name=tomcat2 tomcat:latest
小菠萝测试笔记
2020/10/30
2K1
Docker - 解决创建 tomcat 容器镜像却无法访问页面的问题
AWS 容器服务的安全实践
随着微服务的设计模式得到越来越多开发者的实践,容器和微服务已经在生产环境中开始了规模化的部署。在这一过程中,也面临着越来越多的挑战。比如说,很多的微服务之间是相互依赖的,我们需要有更多的手段和方式来进行微服务的计划,扩展和资源管理,另外微服务之间的隔离更少,它们通常会共享内核或者网络,也对安全性提出了更高的要求。
我是阳明
2021/06/25
2.8K0
AWS 容器服务的安全实践
容器服务 TKE 上服务暴露的几种方式
作者刘飞鸿,腾讯游戏高级工程师,热衷于开源、云计算相关技术。目前主要负责腾讯游戏后台架构设计和运维工作。 预备知识 1. K8S 上 Service 类型 ClusterIP 通过集群的内部 IP 暴露服务,选择该值,服务只能够在集群内部可以访问,这也是默认的 ServiceType。 NodePort 通过每个 Node 上的 IP 和静态端口(NodePort)暴露服务。NodePort 服务会路由到 ClusterIP 服务,这个 ClusterIP 服务会自动创建。通过请求:,可以从集群的外部访问
腾讯云原生
2020/09/14
2K0
简单优化容器服务
本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。署名 4.0 国际 (CC BY 4.0)
soulteary
2023/03/05
8180
简单优化容器服务
容器部署bitwarden服务
如果有域名的话,可以使用nginx来做反向代理。首先为这个业务申请证书。可以使用lets encrypt的服务。
超级大猪
2020/12/01
4.3K1
容器部署bitwarden服务
Symfony 服务容器入门
本文是依赖注入(Depeendency Injection)系列教程的第 3 篇文章,本系列教程主要讲解如何使用 PHP 实现一个轻量级服务容器,教程包括:
柳公子
2018/09/17
3.4K0
为Docker容器中的服务配置固定容器IP教程
如果不固定ip,每次主机重启后,,docker会动态给容器分配ip,导致redis容器的IP自动换了 ,然后还得去改傻妞配置就很烦,有些时候还会造成其他影响。
季春二九
2023/04/04
2.8K0
SQL Server 远程连接出错~~~~~无法访问服务器
异常处理汇总 ~ 修正果带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4599258.html 代理开一下 tcp/ip协议开一下 收工
逸鹏
2018/04/09
8.4K0
SQL Server 远程连接出错~~~~~无法访问服务器
关于mac 系统docker 使用桥接网络ip 宿主机无法访问容器的问题
mac docker 实现的桥接网络是通过了一个linux 虚拟机实现,并不是直接在mac宿主机上创建虚拟网卡,导致无法ping通
仙士可
2021/03/02
5.6K0
关于mac 系统docker 使用桥接网络ip 宿主机无法访问容器的问题
容器 & 服务:Docker 应用的 Jenkins 构建
上一篇文章,我们介绍了一个基于Idea 和 Docker插件来构建SpringBoot应用的实例。但严格来说,那只是个“玩具”,因为太过简陋,不具备任何实用价值。 显然实际使用中,除了测试环境,几乎不可能只通过idea插件去创建一个应用的容器并直接提供单点、点对点的服务。
程序员架构进阶
2021/02/25
1.2K0
容器 & 服务:Docker 应用的 Jenkins 构建

相似问题

无法访问Azure容器服务

11

WebDriver容器无法访问DockerComposeContainer服务

15

服务结构容器-无法访问群集内的服务

13

使用Kubernetes的Azure容器服务-无法访问Internet的容器

216

Azure容器服务容器无法访问除80以外的其他端口

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档