我有一個mysql
容器和一個service
容器需要連接到mysql
容器。碼頭網絡不工作沒有鏈接
我創建了一個網絡與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
我旋轉了
docker run -p 8080:8080 --name chrisbolton-service --network chrisbolton --link chrisbolton-mysql:mysql -d chrisbolton-service
然而service
容器,我知道link
已被棄用,我需要移動到只使用networks
。但是如果我在這裏刪除link
這兩個容器不能通信。
我連接到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並試圖改變我的配置文件,以直接指向。但仍然不確定它爲什麼不能連接。
'datasource.url'是不正確的,你應該指定要連接到的容器的名稱。後來你會知道有比使用服務名稱更好的選擇。 – Ayushya
所以'datasource.url'需要'jdbc:mysql:// chrisbolton-mysql:3306/chrisbolton'? –
是的,這應該工作。你試過了嗎? – Ayushya