我一直在尝试在Docker中设置TeamCity实例,当我尝试从内部数据库迁移时(我成功地删除了该数据库(,TeamCity找不到PostgreSQL的JDBC驱动程序,错误为:No suitable JDBC driver found for database type: PostgreSQL
。Docker容器的TEAMCITY_DATA_PATH
设置为/data/teamcity_server/datadir
,
$TEAMCITY_DATA_PATH/lib/
包含以下内容:
/data/teamcity_server/datadir/lib/
└── jdbc
└── postgresql-42.2.5.jar
所有这些都与映射到容器的母操作系统的文件一致。
database.properties文件(如果需要(:
connectionUrl=jdbc:postgresql://mydbserver.com:5432
我知道这是一个老问题,但仍然没有得到回答。我在试图找到完全相同问题的解决方案时遇到了它,所以让我给遇到这个问题的人留下一个解决方案。
问题的根源在于不正确的connectionUrl
,根据TeamCity文档,它应该在末尾包含数据库名称,例如:
connectionUrl=jdbc:postgresql://mydbserver.com:5432/teamcitydb
这里的错误有点误导人。这不是关于缺少jar,而是关于连接配置。