Я хочу запустить образ докера zipkin для запуска с внешней базой данных mysql.Поэтому я изменил добавленный файл docker-compose следующим образом:
zipkin:
image: openzipkin/zipkin
container_name: zipkin
# Environment settings are defined here https://github.com/openzipkin/zipkin/tree/1.19.0/zipkin-server#environment-variables
environment:
- STORAGE_TYPE=mysql
# Point the zipkin at the storage backend
- MYSQL_HOST=myhost.mycompany.de
- MYSQL_DB=my_zipkin
- MYSQL_USER=my_zipkin
- MYSQL_PASS=xxxx
# Uncomment to enable scribe
# - SCRIBE_ENABLED=true
# Uncomment to enable self-tracing
# - SELF_TRACING_ENABLED=true
# Uncomment to enable debug logging
# - JAVA_OPTS=-Dlogging.level.zipkin=DEBUG -Dlogging.level.zipkin2=DEBUG
ports:
# Port used for the Zipkin UI and HTTP Api
- 9411:9411
# Uncomment if you set SCRIBE_ENABLED=true
# - 9410:9410
Во время запуска я получаю этот вывод с zipkin Server
Attaching to zipkin
zipkin | MySQL host: myhost.mycompany.de
, но я ожидаю, что он создасттаблицы в базе данных MySQLНо таблицы не создаются, и пользовательский интерфейс выдает мне эту ошибку (конечно):
ERROR: cannot load service names: Request processing failed; nested exception is org.jooq.exception.DataAccessException: SQL [select distinct
zipkin_annotations .
endpoint_service_name from
zipkin_annotations where (
zipkin_annotations .
endpoint_service_name is not null and
zipkin_annotations .
endpoint_service_name <> ?)]; (conn=4132460) Table 'ecp_zipkin.zipkin_annotations' doesn't exist
Как мне сказать серверу zipkin сначала создать базу данных, или есть другой способ?