dockernetworking不工作没有链接

我有一个mysql容器和一个service容器,需要连接到mysql容器。

我创build了一个networking与docker network create chrisbolton

我正在旋转的mysql容器

docker run --name chrisbolton-mysql -v /Users/Bolton/chrisbolton-data:/var/lib/mysql --network chrisbolton -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=chrisbolton -d mysql:latest

我正在旋转service容器

docker run -p 8080:8080 --name chrisbolton-service --network chrisbolton --link chrisbolton-mysql:mysql -d chrisbolton-service

不过,我知道这个link已被弃用,我需要转移到只使用networks 。 但是,如果我删除link在这里两个容器不能沟通。

我用以下configuration连接到mysql

 #disbale Spring banner spring.main.banner-mode=off spring.datasource.url=jdbc:mysql://mysql:3306/chrisbolton spring.datasource.username=root spring.datasource.password=password spring.datasource.driver-class-name=com.mysql.jdbc.Driver 

我做了一个docker network inspect chrisbolton得到的IPAddresses,并试图改变我的configuration文件指出,直接。 但仍然不知道为什么它不会连接。

datasource.url是不正确的,你应该指定你想要连接的容器的名称。 有比使用服务的名称更好的select。 您可以使用别名或主机名 。

而在这种情况下,正如你在注释中指出的, datasource.url需要是jdbc:mysql://chrisbolton-mysql:3306/chrisbolton