docker compose mysql与spring boot的链接问题

docker compose mysql与spring boot的链接问题,docker,spring-boot,docker-compose,Docker,Spring Boot,Docker Compose,在关于堆栈溢出的其他问题中也提出了类似的问题,但我似乎无法让我的DockerSpring启动应用程序通过DockerCompose链接到我的DockerMySQL容器 这是我的docker撰写文件: mysql: image: mysql/mysql-server:latest environment: - MYSQL_ROOT_PASSWORD=C4rdi0St4t! - MYSQL_DATABASE=icentia ports: - "

在关于堆栈溢出的其他问题中也提出了类似的问题,但我似乎无法让我的DockerSpring启动应用程序通过DockerCompose链接到我的DockerMySQL容器

这是我的docker撰写文件:

mysql:
    image: mysql/mysql-server:latest
    environment:
    - MYSQL_ROOT_PASSWORD=C4rdi0St4t!
    - MYSQL_DATABASE=icentia
    ports:
        - "3306:3306"
    expose:
        - "3306"    
    volumes:
     - /Users/Shared/data:/var/lib/mysql



tracking:
    image: icentia/tracking:latest
    ports:
        - "8083:8083"
        - "5053:5053" 
    links: 
        - mysql:icentiadb    
这是jdbc连接字符串:

url: jdbc:mysql://icentiadb/icentia?autoReconnect=true&useSSL=false
还尝试了:

url: jdbc:mysql://icentiadb:3306/icentia?autoReconnect=true&useSSL=false
如果我在没有通过IDE在容器中运行的情况下启动spring boot应用程序,并使用localhost:3306,它就可以工作,因此可以通过mysql容器的端口配置(这意味着配置是正确的)

这是Docker为Mac BTW提供的

Spring启动错误:

Caused by: java.net.ConnectException: Connection refused
如果我使用docker compose启动mysql,而不使用compose文件中的spring boot应用程序,并且只使用一个run命令,该命令带有指向使用docker compose启动的正在运行的mysql容器的链接,那么它可以使用这个jdbc连接字符串

url: jdbc:mysql://icentiadb/icentia?autoReconnect=true&useSSL=false
感谢您的任何帮助

确定在此处找到(非)问题。。。并且为张贴它感到羞愧

我用的是param--no recreate和up命令。。。所以它总是使用错误的先前配置