The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.
このページを編集

Dev Servicesの概要

Dev Services(開発サービス)とは何ですか?

Quarkusは、開発モードとテストモードにおける未構成サービスの自動プロビジョニングをサポートしています。この機能をDev Servicesと呼びます。 エクステンションを追加する一方でそれを設定しない場合、Quarkusは自動的に関連するサービスを開始し(通常は裏で Testcontainers を使用)、このサービスを使用するようにアプリケーションを配線します。

永続化とDev Servicesを使用してアプリケーションを書き始める方法を示すチュートリアルについては、 2つ目のQuarkusアプリケーション を参照してください。

Dev Servicesの利用

Dev Servicesは摩擦のないように設計されているため、外部サービスへの接続を設定しない限り、Dev Servicesをサポートするエクステンションを組み込むといつでも自動的に開始されます。

ほとんどのDev Servicesを使用するには、動作するコンテナ環境が必要です(リモート環境もサポートされています)。 DockerやPodmanなどのコンテナ環境がインストールされていない場合は、通常通りサービスを設定する必要があります。

Dev Servicesのデフォルトの起動タイムアウトは60秒です。もしこれが十分でない場合は、 quarkus.devservices.timeout プロパティで増やすことができます。

本番サービスを構成する一方で、開発モードとテスト・モードでは Dev Services を引き続き使用するには、 構成プロファイル を使用してください。

例えば

# configure your datasource
%prod.quarkus.datasource.db-kind = postgresql
%prod.quarkus.datasource.username = prod-admin
%prod.quarkus.datasource.password = super-secret
%prod.quarkus.datasource.jdbc.url = jdbc:postgresql://localhost:5432/mydatabase

Dev Servicesの無効化

この機能はすべて、Quarkus deployment モジュールの一部であり、本番アプリケーションには一切影響しません。すべてのDev Servicesを無効にしたい場合は、 quarkus.devservices.enabled=false 設定プロパティを使用できますが、ほとんどの場合、サービスを構成するだけでDev Servicesが自動的に無効になるため、この設定は必要ありません。

プラットフォームDev Services

このセクションでは、Quarkusプラットフォームで利用可能なすべてのDev Servicesについて説明します。

AMQP

AMQP Dev Service は、 quarkus-messaging-amqp エクステンションがアプリケーションに存在し、ブローカのアドレスが明示的に設定されていない場合に有効になります。 詳細は AMQP Dev Services Guide を参照ください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for AMQP has been explicitly enabled or disabled. Dev Services are generally enabled by default, unless there is an existing configuration present. For AMQP, Dev Services starts a broker unless amqp-host or amqp-port are set or if all the Reactive Messaging AMQP channel are configured with host or port.

Environment variable: QUARKUS_AMQP_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_AMQP_DEVSERVICES_PORT

Show more

int

The image to use. Note that only ActiveMQ Artemis images are supported. Specifically, the image repository must end with artemiscloud/activemq-artemis-broker.

Check the activemq-artemis-broker on Quay page to find the available versions.

Environment variable: QUARKUS_AMQP_DEVSERVICES_IMAGE_NAME

Show more

string

quay.io/artemiscloud/activemq-artemis-broker:1.0.25

The value of the AMQ_EXTRA_ARGS environment variable to pass to the container. For ActiveMQ Artemis Broker ⇐ 1.0.21, set this property to --no-autotune --mapped --no-fsync --relax-jolokia --http-host 0.0.0.0

Environment variable: QUARKUS_AMQP_DEVSERVICES_EXTRA_ARGS

Show more

string

--no-autotune --mapped --no-fsync --relax-jolokia

Indicates if the AMQP broker managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for AMQP starts a new container.

The discovery uses the quarkus-dev-service-amqp label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_AMQP_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-aqmp label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for AMQP looks for a container with the quarkus-dev-service-amqp label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-amqp label set to the specified value.

This property is used when you need multiple shared AMQP brokers.

Environment variable: QUARKUS_AMQP_DEVSERVICES_SERVICE_NAME

Show more

string

amqp

Environment variables that are passed to the container.

Environment variable: QUARKUS_AMQP_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Apicurio Registry

Apicurio Dev Serviceは、アプリケーションに quarkus-apicurio-registry-avro エクステンションが存在し、そのアドレスが明示的に設定されていない場合に有効になります。詳細は、 Apicurio Registry Dev Services ガイドを参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for Apicurio Registry has been explicitly enabled or disabled. Dev Services are generally enabled by default, unless there is an existing configuration present. For Apicurio Registry, Dev Services starts a registry unless mp.messaging.connector.smallrye-kafka.apicurio.registry.url or mp.messaging.connector.smallrye-kafka.schema.registry.url is set.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_PORT

Show more

int

The Apicurio Registry image to use. Note that only Apicurio Registry 2.x images are supported. Specifically, the image repository must end with apicurio/apicurio-registry-mem.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_IMAGE_NAME

Show more

string

quay.io/apicurio/apicurio-registry-mem:2.4.2.Final

Indicates if the Apicurio Registry instance managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Apicurio Registry starts a new container.

The discovery uses the quarkus-dev-service-apicurio-registry label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-apicurio-registry label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Apicurio Registry looks for a container with the quarkus-dev-service-apicurio-registry label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-apicurio-registry label set to the specified value.

This property is used when you need multiple shared Apicurio Registry instances.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_SERVICE_NAME

Show more

string

apicurio-registry

Environment variables that are passed to the container.

Environment variable: QUARKUS_APICURIO_REGISTRY_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

データベース

データベース Dev Services は、アプリケーションにリアクティブ・データソースまたは JDBC データソースエクステンションが存在し、データベースの URL が設定されていない場合に有効になります。詳細については、 データソース・ガイドを参照してください。

Quarkusは、サポートしているすべてのデータベースに対してDev Servicesを提供しています。これらのデータベースのほとんどはコンテナ内で実行されますが、H2とDerbyはプロセス内で実行されます。Dev Serviceは、JDBCドライバとリアクティブドライバの両方をサポートしています。

testcontainers.reuse.enable=true コンテナで動作しているこれらのリレーショナル・データベースは、Testcontainersを使用して起動され、「再利用可能なインスタンス」をサポートしています。これは、Testcontainersの設定ファイルに、ユーザーホームの .testcontainers.properties というプロパティファイルを追加すれば、データベースが実行ごとに積極的に停止せず、再利用が可能になることを意味しています。

注:この機能を選択した場合、明示的に設定しない限り、Quarkusは実行中にデータベースの状態をリセットしません。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

quarkus.datasource."datasource-name".devservices.enabled

Whether this Dev Service should start with the application in dev mode or tests.

Dev Services are enabled by default unless connection configuration (e.g. the JDBC URL or reactive client URL) is set explicitly.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_ENABLED

Show more

ブーリアン

quarkus.datasource."datasource-name".devservices.image-name

The container image name for container-based Dev Service providers.

This has no effect if the provider is not a container-based database, such as H2 or Derby.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_IMAGE_NAME

Show more

string

quarkus.datasource."datasource-name".devservices.container-env."environment-variable-name"

Environment variables that are passed to the container.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

quarkus.datasource."datasource-name".devservices.container-properties."property-key"

Generic properties that are passed for additional container configuration.

Properties defined here are database-specific and are interpreted specifically in each database dev service implementation.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_CONTAINER_PROPERTIES__PROPERTY_KEY_

Show more

Map<String,String>

quarkus.datasource."datasource-name".devservices.properties."property-key"

Generic properties that are added to the database connection URL.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_PROPERTIES__PROPERTY_KEY_

Show more

Map<String,String>

quarkus.datasource."datasource-name".devservices.port

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_PORT

Show more

int

quarkus.datasource."datasource-name".devservices.command

The container start command to use for container-based Dev Service providers.

This has no effect if the provider is not a container-based database, such as H2 or Derby.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_COMMAND

Show more

string

quarkus.datasource."datasource-name".devservices.db-name

The database name to use if this Dev Service supports overriding it.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_DB_NAME

Show more

string

quarkus.datasource."datasource-name".devservices.username

The username to use if this Dev Service supports overriding it.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_USERNAME

Show more

string

quarkus.datasource."datasource-name".devservices.password

The password to use if this Dev Service supports overriding it.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_PASSWORD

Show more

string

quarkus.datasource."datasource-name".devservices.init-script-path

The path to a SQL script to be loaded from the classpath and applied to the Dev Service database.

This has no effect if the provider is not a container-based database, such as H2 or Derby.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_INIT_SCRIPT_PATH

Show more

string

quarkus.datasource."datasource-name".devservices.volumes."host-path"

The volumes to be mapped to the container.

The map key corresponds to the host location; the map value is the container location. If the host location starts with "classpath:", the mapping loads the resource from the classpath with read-only permission.

When using a file system location, the volume will be generated with read-write permission, potentially leading to data loss or modification in your file system.

This has no effect if the provider is not a container-based database, such as H2 or Derby.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_VOLUMES__HOST_PATH_

Show more

Map<String,String>

quarkus.datasource."datasource-name".devservices.reuse

Whether to keep Dev Service containers running after a dev mode session or test suite execution to reuse them in the next dev mode session or test suite execution.

Within a dev mode session or test suite execution, Quarkus will always reuse Dev Services as long as their configuration (username, password, environment, port bindings, …​) did not change. This feature is specifically about keeping containers running when Quarkus is not running to reuse them across runs.

This feature needs to be enabled explicitly in testcontainers.properties, may require changes to how you configure data initialization in dev mode and tests, and may leave containers running indefinitely, forcing you to stop and remove them manually. See this section of the documentation for more information.

This configuration property is set to true by default, so it is mostly useful to disable reuse, if you enabled it in testcontainers.properties but only want to use it for some of your Quarkus applications or datasources.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_REUSE

Show more

ブーリアン

true

quarkus.datasource."datasource-name".devservices.show-logs

Whether the logs should be consumed by the JBoss logger.

This has no effect if the provider is not a container-based database, such as H2 or Derby.

Environment variable: QUARKUS_DATASOURCE_DEVSERVICES_SHOW_LOGS

Show more

ブーリアン

false

Kafka

Kafka Dev Serviceは、アプリケーションに quarkus-kafka-client エクステンションが存在し、ブローカー・アドレスが明示的に設定されていない場合に有効になります。詳細については、 Kafka Dev Services ガイドを参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for Kafka has been explicitly enabled or disabled. Dev Services are generally enabled by default, unless there is an existing configuration present. For Kafka, Dev Services starts a broker unless kafka.bootstrap.servers is set or if all the Reactive Messaging Kafka channel are configured with a bootstrap.servers.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_PORT

Show more

int

Kafka dev service container type.

Redpanda, Strimzi and kafka-native container providers are supported. Default is redpanda.

Note that Strimzi and Kafka Native images are launched in Kraft mode.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_PROVIDER

Show more

redpanda, strimzi, kafka-native

redpanda

The Kafka container image to use.

Dependent on the provider.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_IMAGE_NAME

Show more

string

Indicates if the Kafka broker managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Kafka starts a new container.

The discovery uses the quarkus-dev-service-kafka label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-kafka label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Kafka looks for a container with the quarkus-dev-service-kafka label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-kafka label set to the specified value.

This property is used when you need multiple shared Kafka brokers.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_SERVICE_NAME

Show more

string

kafka

The topic-partition pairs to create in the Dev Services Kafka broker. After the broker is started, given topics with partitions are created, skipping already existing topics. For example, quarkus.kafka.devservices.topic-partitions.test=2 will create a topic named test with 2 partitions.

The topic creation will not try to re-partition existing topics with different number of partitions.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_TOPIC_PARTITIONS__TOPIC_NAME_

Show more

Map<String,Integer>

Timeout for admin client calls used in topic creation.

Defaults to 2 seconds.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_TOPIC_PARTITIONS_TIMEOUT

Show more

Duration 

2S

Environment variables that are passed to the container.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Enables transaction support. Also enables the producer idempotence. Find more info about Redpanda transaction support on https://vectorized.io/blog/fast-transactions/. Notice that KIP-447 (producer scalability for exactly once semantic) and KIP-360 (Improve reliability of idempotent/transactional producer) are not supported.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_REDPANDA_TRANSACTION_ENABLED

Show more

ブーリアン

true

Port to access the Redpanda HTTP Proxy (pandaproxy).

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_KAFKA_DEVSERVICES_REDPANDA_PROXY_PORT

Show more

int

期間フォーマットについて

To write duration values, use the standard java.time.Duration format. See the Duration#parse() Java API documentation for more information.

数字で始まる簡略化した書式を使うこともできます:

  • 数値のみの場合は、秒単位の時間を表します。

  • 数値の後に ms が続く場合は、ミリ秒単位の時間を表します。

その他の場合は、簡略化されたフォーマットが解析のために java.time.Duration フォーマットに変換されます:

  • 数値の後に hms が続く場合は、その前に PT が付けられます。

  • 数値の後に d が続く場合は、その前に P が付けられます。

Keycloak

Keycloak Dev Serviceは、アプリケーションに quarkus-oidc エクステンションが存在し、サーバ・アドレスが明示的に設定されていない場合に有効になります。詳細は, OIDC Dev Services ガイドを参照してください。

ビルド時に固定される構成プロパティ - 他のすべての構成プロパティは実行時にオーバーライド可能

Configuration property

デフォルト

Flag to enable (default) or disable Dev Services. When enabled, Dev Services for Keycloak automatically configures and starts Keycloak in Dev or Test mode, and when Docker is running.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_ENABLED

Show more

boolean

true

The container image name for Dev Services providers. Defaults to a Quarkus-based Keycloak image. For a WildFly-based distribution, use an image like quay.io/keycloak/keycloak:19.0.3-legacy. Keycloak Quarkus and WildFly images are initialized differently. Dev Services for Keycloak will assume it is a Keycloak Quarkus image unless the image version ends with -legacy. Override with quarkus.keycloak.devservices.keycloak-x-image.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_IMAGE_NAME

Show more

string

quay.io/keycloak/keycloak:25.0.6

Indicates if a Keycloak-X image is used. By default, the image is identified by keycloak-x in the image name. For custom images, override with quarkus.keycloak.devservices.keycloak-x-image. You do not need to set this property if the default check works.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_KEYCLOAK_X_IMAGE

Show more

boolean

Determines if the Keycloak container is shared. When shared, Quarkus uses label-based service discovery to find and reuse a running Keycloak container, so a second one is not started. Otherwise, if a matching container is not is found, a new container is started. The service discovery uses the quarkus-dev-service-label label, whose value is set by the service-name property. Container sharing is available only in dev mode.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_SHARED

Show more

boolean

true

The value of the quarkus-dev-service-keycloak label for identifying the Keycloak container. Used in shared mode to locate an existing container with this label. If not found, a new container is initialized with this label. Applicable only in dev mode.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_SERVICE_NAME

Show more

string

quarkus

A comma-separated list of class or file system paths to Keycloak realm files. This list is used to initialize Keycloak. The first value in this list is used to initialize default tenant connection properties.

To learn more about Keycloak realm files, consult the Importing and Exporting Keycloak Realms documentation.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_REALM_PATH

Show more

list of string

Aliases to additional class or file system resources that are used to initialize Keycloak. Each map entry represents a mapping between an alias and a class or file system resource path.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_RESOURCE_ALIASES__ALIAS_NAME_

Show more

Map<String,String>

Additional class or file system resources that are used to initialize Keycloak. Each map entry represents a mapping between a class or file system resource path alias and the Keycloak container location.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_RESOURCE_MAPPINGS__RESOURCE_NAME_

Show more

Map<String,String>

The JAVA_OPTS passed to the keycloak JVM

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_JAVA_OPTS

Show more

string

Show Keycloak log messages with a "Keycloak:" prefix.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_SHOW_LOGS

Show more

boolean

false

Keycloak start command. Use this property to experiment with Keycloak start options, see https://www.keycloak.org/server/all-config. Note, it is ignored when loading legacy Keycloak WildFly images.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_START_COMMAND

Show more

string

The name of the Keycloak realm. This property is used to create the realm if the realm file pointed to by the realm-path property does not exist. The default value is quarkus in this case. It is recommended to always set this property so that Dev Services for Keycloak can identify the realm name without parsing the realm file.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_REALM_NAME

Show more

string

Specifies whether to create the Keycloak realm when no realm file is found at the realm-path. Set to false if the realm is to be created using either the Keycloak Administration Console or the Keycloak Admin API provided by io.quarkus.test.common.QuarkusTestResourceLifecycleManager.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_CREATE_REALM

Show more

boolean

true

Specifies whether to create the default client id quarkus-app with a secret secret and register them if the create-realm property is set to true. For OIDC extension configuration properties quarkus.oidc.client.id and quarkus.oidc.credentials.secret will be configured. For OIDC Client extension configuration properties quarkus.oidc-client.client.id and quarkus.oidc-client.credentials.secret will be configured. Set to false if clients have to be created using either the Keycloak Administration Console or the Keycloak Admin API provided by io.quarkus.test.common.QuarkusTestResourceLifecycleManager or registered dynamically.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_CREATE_CLIENT

Show more

boolean

true

Specifies whether to start the container even if the default OIDC tenant is disabled. Setting this property to true may be necessary in a multi-tenant OIDC setup, especially when OIDC tenants are created dynamically.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_START_WITH_DISABLED_TENANT

Show more

boolean

false

A map of Keycloak usernames to passwords. If empty, default users alice and bob are created with their names as passwords. This map is used for user creation when no realm file is found at the realm-path.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_USERS__USERS_

Show more

Map<String,String>

A map of roles for Keycloak users. If empty, default roles are assigned: alice receives admin and user roles, while other users receive user role. This map is used for role creation when no realm file is found at the realm-path.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_ROLES__ROLE_NAME_

Show more

Map<String,List<String>>

The specific port for the dev service to listen on.

If not specified, a random port is selected.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_PORT

Show more

int

Environment variables to be passed to the container.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Memory limit for Keycloak container

If not specified, 750MiB is the default memory limit.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_CONTAINER_MEMORY_LIMIT

Show more

MemorySize 

750M

The WebClient timeout. Use this property to configure how long an HTTP client used by OIDC dev service admin client will wait for a response from OpenId Connect Provider when acquiring admin token and creating realm.

Environment variable: QUARKUS_KEYCLOAK_DEVSERVICES_WEB_CLIENT_TIMEOUT

Show more

Duration 

4S

期間フォーマットについて

To write duration values, use the standard java.time.Duration format. See the Duration#parse() Java API documentation for more information.

数字で始まる簡略化した書式を使うこともできます:

  • 数値のみの場合は、秒単位の時間を表します。

  • 数値の後に ms が続く場合は、ミリ秒単位の時間を表します。

その他の場合は、簡略化されたフォーマットが解析のために java.time.Duration フォーマットに変換されます:

  • 数値の後に hms が続く場合は、その前に PT が付けられます。

  • 数値の後に d が続く場合は、その前に P が付けられます。

About the MemorySize format

A size configuration option recognizes strings in this format (shown as a regular expression): [0-9]+[KkMmGgTtPpEeZzYy]?.

If no suffix is given, assume bytes.

Kubernetes

The Kubernetes Dev Service will be enabled when the kubernetes-client extension is present in your application, and the API server address has not been explicitly configured. More information can be found in the Kubernetes Dev Services Guide.

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for Kubernetes should be used. (default to true) If this is true and kubernetes client is not configured then a kubernetes cluster will be started and will be used.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_ENABLED

Show more

ブーリアン

true

The kubernetes api server version to use. If not set, Dev Services for Kubernetes will use the latest supported version of the given flavor. see https://github.com/dajudge/kindcontainer/blob/master/k8s-versions.json

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_API_VERSION

Show more

string

The flavor to use (kind, k3s or api-only). Default to api-only.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_FLAVOR

Show more

kindkind (needs priviledge docker), k3sk3s (needs priviledge docker), api-onlyapi only

api-onlyapi only

By default, if a kubeconfig is found, Dev Services for Kubernetes will not start. Set this to true to override the kubeconfig config.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_OVERRIDE_KUBECONFIG

Show more

ブーリアン

false

Indicates if the Kubernetes cluster managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Kubernetes starts a new container.

The discovery uses the quarkus-dev-service-kubernetes label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-kubernetes label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Kubernetes looks for a container with the quarkus-dev-service-kubernetes label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-kubernetes label set to the specified value.

This property is used when you need multiple shared Kubernetes clusters.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_SERVICE_NAME

Show more

string

kubernetes

Environment variables that are passed to the container.

Environment variable: QUARKUS_KUBERNETES_CLIENT_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

MongoDB

The MongoDB Dev Service will be enabled when the quarkus-mongodb-client extension is present in your application, and the server address has not been explicitly configured. More information can be found in the MongoDB Guide.

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If DevServices has been explicitly enabled or disabled. DevServices is generally enabled by default, unless there is an existing configuration present.

When DevServices is enabled Quarkus will attempt to automatically configure and start a database when running in Dev or Test mode.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_ENABLED

Show more

ブーリアン

The container image name to use, for container based DevServices providers.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_IMAGE_NAME

Show more

string

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_PORT

Show more

int

Generic properties that are added to the connection URL.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_PROPERTIES__PROPERTY_KEY_

Show more

Map<String,String>

Environment variables that are passed to the container.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Indicates if the MongoDB server managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for MongoDB starts a new container.

The discovery uses the quarkus-dev-service-mongodb label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-mongodb label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for MongoDB looks for a container with the quarkus-dev-service-mongodb label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise it starts a new container with the quarkus-dev-service-mongodb label set to the specified value.

Environment variable: QUARKUS_MONGODB_DEVSERVICES_SERVICE_NAME

Show more

string

mongodb

RabbitMQ

RabbitMQ Dev Serviceは、アプリケーションに quarkus-messaging-rabbitmq エクステンションが存在し、ブローカーアドレスが明示的に設定されていない場合に有効になります。 詳細は RabbitMQ Dev Servicesガイド を参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for RabbitMQ has been explicitly enabled or disabled. Dev Services are generally enabled by default, unless there is an existing configuration present. For RabbitMQ, Dev Services starts a broker unless rabbitmq-host or rabbitmq-port are set or if all the Reactive Messaging RabbitMQ channel are configured with host or port.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_PORT

Show more

int

Optional fixed port for the RabbitMQ management plugin.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_HTTP_PORT

Show more

int

The image to use. Note that only official RabbitMQ images are supported. Specifically, the image repository must end with rabbitmq.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_IMAGE_NAME

Show more

string

rabbitmq:3.12-management

Indicates if the RabbitMQ broker managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for RabbitMQ starts a new container.

The discovery uses the quarkus-dev-service-rabbitmq label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-rabbitmq label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for RabbitMQ looks for a container with the quarkus-dev-service-rabbitmq label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-rabbitmq label set to the specified value.

This property is used when you need multiple shared RabbitMQ brokers.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_SERVICE_NAME

Show more

string

rabbitmq

Type of exchange: direct, topic, headers, fanout, etc.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_EXCHANGES__EXCHANGE_NAME__TYPE

Show more

string

direct

Should the exchange be deleted when all queues are finished using it?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_EXCHANGES__EXCHANGE_NAME__AUTO_DELETE

Show more

ブーリアン

false

Should the exchange remain after restarts?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_EXCHANGES__EXCHANGE_NAME__DURABLE

Show more

ブーリアン

false

What virtual host should the exchange be associated with?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_EXCHANGES__EXCHANGE_NAME__VHOST

Show more

string

/

Extra arguments for the exchange definition.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_EXCHANGES__EXCHANGE_NAME__ARGUMENTS__ARGUMENT_NAME_

Show more

Map<String,String>

Should the queue be deleted when all consumers are finished using it?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_QUEUES__QUEUE_NAME__AUTO_DELETE

Show more

ブーリアン

false

Should the queue remain after restarts?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_QUEUES__QUEUE_NAME__DURABLE

Show more

ブーリアン

false

What virtual host should the queue be associated with?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_QUEUES__QUEUE_NAME__VHOST

Show more

string

/

Extra arguments for the queue definition.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_QUEUES__QUEUE_NAME__ARGUMENTS__ARGUMENT_NAME_

Show more

Map<String,String>

Source exchange to bind to. Defaults to name of binding instance.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__SOURCE

Show more

string

Routing key specification for the source exchange.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__ROUTING_KEY

Show more

string

#

Destination exchange or queue to bind to. Defaults to name of binding instance.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__DESTINATION

Show more

string

Destination type for binding: queue, exchange, etc.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__DESTINATION_TYPE

Show more

string

queue

What virtual host should the binding be associated with?

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__VHOST

Show more

string

/

Extra arguments for the binding definition.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_BINDINGS__BINDING_NAME__ARGUMENTS__ARGUMENT_NAME_

Show more

Map<String,String>

Virtual hosts that should be predefined after starting the RabbitMQ broker.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_VHOSTS

Show more

list of string

Environment variables that are passed to the container.

Environment variable: QUARKUS_RABBITMQ_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Pulsar

Pulsar Devサービスは、 quarkus-messaging-pulsar エクステンションがアプリケーションに存在し、ブローカー・アドレスが明示的に設定されていない場合に有効になります。 詳細は Pulsar Dev Services ガイド をご覧ください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If Dev Services for Pulsar has been explicitly enabled or disabled. Dev Services are generally enabled by default, unless there is an existing configuration present. For Pulsar, Dev Services starts a broker unless pulsar.client.serviceUrl is set or if all the Reactive Messaging Pulsar channel are configured with serviceUrl.

Environment variable: QUARKUS_PULSAR_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_PULSAR_DEVSERVICES_PORT

Show more

int

The image to use. Note that only Apache Pulsar images are supported. Specifically, the image repository must end with apachepulsar/pulsar. Check https://hub.docker.com/r/apachepulsar/pulsar to find the available versions.

Environment variable: QUARKUS_PULSAR_DEVSERVICES_IMAGE_NAME

Show more

string

apachepulsar/pulsar:3.2.4

Indicates if the Pulsar broker managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Pulsar starts a new container.

The discovery uses the quarkus-dev-service-pulsar label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_PULSAR_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-pulsar label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Pulsar looks for a container with the quarkus-dev-service-pulsar label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-pulsar label set to the specified value.

This property is used when you need multiple shared Pulsar brokers.

Environment variable: QUARKUS_PULSAR_DEVSERVICES_SERVICE_NAME

Show more

string

pulsar

Broker config to set on the Pulsar instance

Environment variable: QUARKUS_PULSAR_DEVSERVICES_BROKER_CONFIG__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Redis

Redis Dev Serviceは、アプリケーションに quarkus-redis-client エクステンションが存在し、サーバー・アドレスが明示的に設定されていない場合に有効になります。詳細は、 Redis Dev Services ガイドを参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If DevServices has been explicitly enabled or disabled. DevServices is generally enabled by default, unless there is an existing configuration present.

When DevServices is enabled Quarkus will attempt to automatically configure and start a database when running in Dev or Test mode and when Docker is running.

Environment variable: QUARKUS_REDIS_DEVSERVICES_ENABLED

Show more

ブーリアン

true

The container image name to use, for container based DevServices providers. If you want to use Redis Stack modules (bloom, graph, search…​), use: redis/redis-stack:latest.

Environment variable: QUARKUS_REDIS_DEVSERVICES_IMAGE_NAME

Show more

string

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_REDIS_DEVSERVICES_PORT

Show more

int

Indicates if the Redis server managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Redis starts a new container.

The discovery uses the quarkus-dev-service-redis label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_REDIS_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-redis label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Redis looks for a container with the quarkus-dev-service-redis label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-redis label set to the specified value.

This property is used when you need multiple shared Redis servers.

Environment variable: QUARKUS_REDIS_DEVSERVICES_SERVICE_NAME

Show more

string

redis

Environment variables that are passed to the container.

Environment variable: QUARKUS_REDIS_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Vault

Vault Dev Service は、アプリケーションに quarkus-vault エクステンションが存在し、サーバー アドレスが明示的に設定されていない場合に有効になります。詳細については、 Vaultガイドを参照してください。

Infinispan

Infinispan Dev Serviceは、アプリケーションに quarkus-infinispan-client エクステンションが存在し、サーバ・アドレスが明示的に設定されていない場合に有効になります。詳細は Infinispan Dev Services ガイド を参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

If DevServices has been explicitly enabled or disabled. DevServices is generally enabled by default, unless there is an existing configuration present.

When DevServices is enabled Quarkus will attempt to automatically configure and start a database when running in Dev or Test mode and when Docker is running.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_ENABLED

Show more

ブーリアン

true

When the configuration is empty, an Infinispan default client is automatically created to connect to the running dev service. However, there are scenarios where creating this client is unnecessary, yet we still need to spin up an Infinispan Server. In such cases, this property serves to determine whether the client should be created by default or not by the extension.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_CREATE_DEFAULT_CLIENT

Show more

ブーリアン

true

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_PORT

Show more

int

Indicates if the Infinispan server managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Infinispan starts a new container.

The discovery uses the quarkus-dev-service-infinispan label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-infinispan label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for Infinispan looks for a container with the quarkus-dev-service-infinispan label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service-infinispan label set to the specified value.

This property is used when you need multiple shared Infinispan servers.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_SERVICE_NAME

Show more

string

infinispan

The image to use. Note that only official Infinispan images are supported.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_IMAGE_NAME

Show more

string

List of the artifacts to automatically download and add to the Infinispan server libraries.

For example a Maven coordinate (org.postgresql:postgresql:42.3.1) or a dependency location url.

If an invalid value is passed, the Infinispan server will throw an error when trying to start.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_ARTIFACTS

Show more

list of string

Add a site name to start the Infinispan Server Container with Cross Site Replication enabled (ex. lon). Cross Site Replication is the capability to connect two separate Infinispan Server Clusters that might run in different Data Centers, and configure backup caches to copy the data across the clusters with active-active or active-passive replication. See more about Cross Site Replication in the Infinispan Documentation https://infinispan.org/docs/stable/titles/xsite/xsite.html Configure mcast-port to avoid forming a cluster with any other running Infinispan Server container.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_SITE

Show more

string

If you are running an Infinispan Server already in docker, if the containers use the same mcastPort they will form a cluster. Set a different mcastPort to create a separate cluster in Docker (e. 46656). A common use case in a local Docker development mode, is the need of having two different Infinispan Clusters with Cross Site Replication enabled. see https://github.com/infinispan/infinispan-simple-tutorials/blob/main/infinispan-remote/cross-site-replication/docker-compose/

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_MCAST_PORT

Show more

int

Environment variables that are passed to the container.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Infinispan Server configuration chunks to be passed to the container.

Environment variable: QUARKUS_INFINISPAN_CLIENT_DEVSERVICES_CONFIG_FILES

Show more

list of string

Elasticsearch

Redis Dev Serviceは、アプリケーションに quarkus-redis-client エクステンションが存在し、サーバー・アドレスが明示的に設定されていない場合に有効になります。詳細は、 Redis Dev Services ガイドを参照してください。

ビルド時に固定される設定プロパティ - その他の設定プロパティは実行時にオーバーライド可能です。

Configuration property

タイプ

デフォルト

Whether this Dev Service should start with the application in dev mode or tests.

Dev Services are enabled by default unless connection configuration (e.g. quarkus.elasticsearch.hosts) is set explicitly.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_ENABLED

Show more

ブーリアン

Optional fixed port the dev service will listen to.

If not defined, the port will be chosen randomly.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_PORT

Show more

int

The Elasticsearch distribution to use.

Defaults to a distribution inferred from the explicitly configured image-name (if any), or by default to the distribution configured in depending extensions (e.g. Hibernate Search), or by default to elastic.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_DISTRIBUTION

Show more

elastic, opensearch

The Elasticsearch container image to use.

Defaults depend on the configured distribution:

  • For the elastic distribution: docker.io/elastic/elasticsearch:8.15.0

  • For the opensearch distribution: docker.io/opensearchproject/opensearch:2.16.0

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_IMAGE_NAME

Show more

string

The value for the ES_JAVA_OPTS env variable.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_JAVA_OPTS

Show more

string

-Xms512m -Xmx1g

Whether the Elasticsearch server managed by Quarkus Dev Services is shared.

When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services for Elasticsearch starts a new container.

The discovery uses the quarkus-dev-service-elasticsearch label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service-elasticsearch label attached to the started container.

This property is used when shared is set to true. In this case, before starting a container, Dev Services for Elasticsearch looks for a container with the quarkus-dev-service-elasticsearch label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise it starts a new container with the quarkus-dev-service-elasticsearch label set to the specified value.

This property is used when you need multiple shared Elasticsearch servers.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_SERVICE_NAME

Show more

string

elasticsearch

Environment variables that are passed to the container.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_CONTAINER_ENV__ENVIRONMENT_VARIABLE_NAME_

Show more

Map<String,String>

Whether to keep Dev Service containers running after a dev mode session or test suite execution to reuse them in the next dev mode session or test suite execution.

Within a dev mode session or test suite execution, Quarkus will always reuse Dev Services as long as their configuration (username, password, environment, port bindings, …​) did not change. This feature is specifically about keeping containers running when Quarkus is not running to reuse them across runs.

This feature needs to be enabled explicitly in testcontainers.properties, may require changes to how you configure data initialization in dev mode and tests, and may leave containers running indefinitely, forcing you to stop and remove them manually. See this section of the documentation for more information.

This configuration property is set to true by default, so it is mostly useful to disable reuse, if you enabled it in testcontainers.properties but only want to use it for some of your Quarkus applications.

Environment variable: QUARKUS_ELASTICSEARCH_DEVSERVICES_REUSE

Show more

ブーリアン

true

Observability

The Observability Dev Services will be enabled when the quarkus-observability-devservices extension is present in your application, and there is at least one dev resource on the classpath. More information can be found in the Observability Dev Services Guide.

ビルド時に固定される構成プロパティ - 他のすべての構成プロパティは、実行時にオーバーライド可能

Configuration property

タイプ

デフォルト

Grafana LGTM configuration

タイプ

デフォルト

If DevServices has been explicitly enabled or disabled. DevServices is generally enabled by default, unless there is an existing configuration present.

When DevServices is enabled Quarkus will attempt to automatically configure and start a containers when running in Dev or Test mode and when Docker is running.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_ENABLED

Show more

ブーリアン

true

Indicates if the container managed by Quarkus Dev Services is shared. When shared, Quarkus looks for running containers using label-based service discovery. If a matching container is found, it is used, and so a second one is not started. Otherwise, Dev Services starts a new container.

The discovery uses the quarkus-dev-service-label label. The value is configured using the service-name property.

Container sharing is only used in dev mode.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_SHARED

Show more

ブーリアン

true

The value of the quarkus-dev-service label attached to the started container. This property is used when shared is set to true. In this case, before starting a container, Dev Services for looks for a container with the quarkus-dev-service label set to the configured value. If found, it will use this container instead of starting a new one. Otherwise, it starts a new container with the quarkus-dev-service label set to the specified value.

This property is used when you need multiple shared containers.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_SERVICE_NAME

Show more

string

quarkus

The username.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_USERNAME

Show more

string

admin

The password.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_PASSWORD

Show more

string

admin

The port of the Grafana container.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_GRAFANA_PORT

Show more

int

3000

The timeout.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_TIMEOUT

Show more

Duration 

PT1M

The name of the Grafana LGTM Docker image.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_IMAGE_NAME

Show more

string

docker.io/grafana/otel-lgtm:0.7.5

The Docker network aliases.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_NETWORK_ALIASES

Show more

list of string

lgtm,lgtm.testcontainer.docker

The label of the container.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_LABEL

Show more

string

quarkus-dev-service-lgtm

The LGTM’s OTLP protocol.

Environment variable: QUARKUS_OBSERVABILITY_LGTM_OTLP_PROTOCOL

Show more

string

http/protobuf

If DevServices has been explicitly enabled or disabled. DevServices is generally enabled by default, unless there is an existing configuration present.

When DevServices is enabled Quarkus will attempt to automatically configure and start a containers when running in Dev or Test mode and when Docker is running.

Environment variable: QUARKUS_OBSERVABILITY_ENABLED

Show more

ブーリアン

true

Enable simplified usage of dev resources, instead of full observability processing. Make sure @code{enabled} is set to false.

Environment variable: QUARKUS_OBSERVABILITY_DEV_RESOURCES

Show more

ブーリアン

false

Do we start the dev services in parallel.

Environment variable: QUARKUS_OBSERVABILITY_PARALLEL

Show more

ブーリアン

false

期間フォーマットについて

To write duration values, use the standard java.time.Duration format. See the Duration#parse() Java API documentation for more information.

数字で始まる簡略化した書式を使うこともできます:

  • 数値のみの場合は、秒単位の時間を表します。

  • 数値の後に ms が続く場合は、ミリ秒単位の時間を表します。

その他の場合は、簡略化されたフォーマットが解析のために java.time.Duration フォーマットに変換されます:

  • 数値の後に hms が続く場合は、その前に PT が付けられます。

  • 数値の後に d が続く場合は、その前に P が付けられます。

Quarkusプラットフォーム以外のDev Services

Quarkus Platformに含まれていないQuarkiverseのエクステンションの多くも、Dev Servicesを提供しています。

以下はそのハイライトです。

Neo4j

Neo4j Dev Serviceは、アプリケーションに quarkus-neo4j エクステンションが存在し、サーバ・アドレスが明示的に設定されていない場合に有効になります。詳細は、 Neo4jガイドを参照してください。

WireMock

WireMockエクステンションは、WireMockをDevサービスとして起動します。テストに特化したエクステンションであり、開発モードとテストモードでのみ実行するように設計されています。 詳細は WireMockガイド を参照してください。

Microcks

Microcks Quarkusエクステンションには、Microcks Dev Serviceが含まれています。Dev Serviceは、依存関係のモックを管理し、APIエンドポイントのコントラクトテストを行います。 詳細については、エクステンションの README.md を参照してください。

関連コンテンツ