我有兩個罐子:“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
提交
取消