我有两个罐子:“Eureka”和“Webportal”。我试图在两个 docker 容器中运行它们(使用 docker-compose)。我从 Webportal 服务容器中收到一个错误:com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server容器能够相互访问,我已经使用以下方法对其进行了检查:-(附加docker exec -it {container_id} /bin/sh控制台)- wget http://192.168.1.169:8761(获取 eureka 服务的主页)。我读到 Eureka 无法解析主机名,社区建议的一个可能的解决方法是使用主机 ip。这是我的 docker-compose 文件:version: '3'services: mysql: container_name: project-mysql image: mysql/mysql-server:5.7 ports: - "3306:3306" environment: MYSQL_DATABASE: project MYSQL_ROOT_PASSWORD: MYSQL_ROOT_HOST: '%' restart: always redis: container_name: project-redis image: redis:alpine ports: - "6379:6379" restart: always eureka-server: container_name: project-eureka image: maven:3.5-jdk-8 ports: - "8761:8761" working_dir: /service volumes: - ../project-eureka-service/target:/service command: java -jar /service/project-eureka-service-0.0.1-SNAPSHOT.jar restart: always depends_on: - redis - mysql webportal: container_name: project-webportal image: maven:3.5-jdk-8 ports: - "9191:9191" working_dir: /service volumes: - ../project-webportal/target:/service command: java -jar /service/project-webportal-0.0.1-SNAPSHOT.jar restart: always depends_on: - eureka-server links: - eureka-servernetworks: spring-cloud-network: driver: bridge使用此配置,我可以从主机(通过 java -jar)运行它们,但不能通过 docker(docker-compose up)运行它们。我应该改变什么?
1 回答

幕布斯6054654
TA贡献1876条经验 获得超7个赞
试试这个配置:
eureka.client.serviceUrl.defaultZone=http://192.168.1.169:8761/eureka
添加回答
举报
0/150
提交
取消