我正在尝试连接到使用docker compose创建的mysql docker容器。
version: '3.1'
services:
mysql:
image: mysql:5.7.12
ports:
- "6033:3306"
command: --sql_mode="" --default-authentication-plugin=mysql_native_password --transaction-isolation=READ-UNCOMMITTED
restart: always
container_name: docker-mysql
environment:
MYSQL_DATABASE: transaction_summary
MYSQL_ROOT_PASSWORD: root
然后在管道脚本中运行.gradlew test命令以运行测试。但是,它失败,并抱怨无法连接到数据库。 Jenkins使用的标签是Ubuntu-18。 我的网址在应用程序中看起来像这样。
url: jdbc:mysql://localhost:6033/transaction_summary
当我在笔记本电脑上运行它时,它运行良好。但这对詹金斯失败了。 我在jenkins脚本中添加了docker ps以确保容器正在运行。它正在运行,为我提供以下详细信息:
197fbf0c793a mysql:5.7.12 "docker-entrypoint.s…" 0.0.0.0:6033->3306/tcp docker-mysql
我尝试使用127.0.0.1、0.0.0.0、127.0.0.2代替localhost。而且仍然抱怨。
答案 0 :(得分:0)
可以是尝试图片名称,即mysql
网址看起来像jdbc:mysql://mysql:6033/transaction_summary