如何在Quarkus中为数据源DevService设置容器名称以区分实例?
在Quarkus中为Postgres DevService设置容器名称
针对多Postgres DevService的区分需求,你可以通过Quarkus的数据源DevService专属配置项为每个容器指定自定义名称,具体操作如下:
- 明确多数据源的配置前缀:Quarkus中主数据源默认使用
quarkus.datasource前缀,第二个及以后的数据源需要通过quarkus.datasource.<自定义数据源名>来定义(比如quarkus.datasource.secondary)。 - 配置容器名称:使用
quarkus.datasource.<数据源名>.devservices.container-name属性为对应DevService设置容器名称。示例配置如下:# 主数据源的DevService容器名 quarkus.datasource.devservices.container-name=postgres-primary-dev # 第二个数据源的DevService容器名 quarkus.datasource.secondary.devservices.container-name=postgres-secondary-dev # 基础数据源类型配置(必须指定,DevService才会自动启动对应容器) quarkus.datasource.db-kind=postgresql quarkus.datasource.secondary.db-kind=postgresql - 验证效果:启动应用后执行
docker ps,就能看到带有自定义名称的Postgres容器,直接通过名称区分不同的DevService实例,无需再连接查看表结构。
如果需要额外配置容器参数(如时区、环境变量),还可以通过quarkus.datasource.<数据源名>.devservices.container-properties添加,比如:
quarkus.datasource.secondary.devservices.container-properties.TZ=Asia/Shanghai
内容的提问来源于stack exchange,提问作者Herr Derb
相关产品推荐
相关产品推荐

