[英]Docker Mysql 8, Docker spring boot - Failed to configure a DataSource: 'url' attribute is not specified
[英]Docker Compose Failed to configure a DataSource in Spring Boot Microservices
我在 Spring Boot Microservice 示例中的某些服務中定義數據庫時遇到問題。 當我通過此命令(docker-compose up -d)運行 docker-compose.yml 文件時,我在用戶服務、廣告服務和最后報告服務中遇到了數據源問題。
所有這些服務都在config server的配置文件夾下自己的屬性文件中定義了自己的數據庫。
這是docker-compose.yml的數據庫部分
database:
container_name: mysql-database
image: 'mysql:latest'
ports:
- "3366:3306"
restart: always
environment:
MYSQL_DATABASE: "springbootuser"
MYSQL_USER: "springmicroserviceuser"
MYSQL_PASSWORD: "111111"
MYSQL_ROOT_PASSWORD: "111111"
volumes:
- db-data:/var/lib/mysql
networks:
backend:
aliases:
- "database"
healthcheck:
test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
timeout: 20s
retries: 10
如何修復 docker-compose 文件中定義的所有服務中的數據源問題
這是我的docker-compose.yml : 鏈接
這是用戶服務屬性文件: 鏈接
這是廣告服務屬性文件: 鏈接
這是報告服務屬性文件: 鏈接
這是您的數據源連接端口localhost:3306
的問題。 用戶3366
而不是3306
。 當您在同一 docker 網絡上定義內部端口時,您需要使用database hostname
而不是localhost
。 如果您使用 localhost 或 IP 那么您需要使用 docker 為從外部網絡路由的數據庫連接公開端口。
如果需要更新 docker 撰寫數據庫部分:
ports:
- "3366:3306"
expose:
- "3366"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.