[halo-dev/halo]docker compose + mysql 启动报错 无法启动容器

2024-03-21 207 views
3

cd到 对应文件夹之后 填写好 docker-compose.yaml

我的配置如下

version: "3"

services:
  halo:
    image: halohub/halo:2.4
    container_name: halo
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    volumes:
      - ./:/root/.halo2
    ports:
      - "8090:8090"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
      interval: 30s
      timeout: 5s
      retries: 5
      start_period: 30s
    command:
      - --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halodb
      - --spring.r2dbc.username=root
      # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
      - --spring.r2dbc.password=admin
      - --spring.sql.init.platform=mysql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=http://(我的服务器IP):8090/
      # 初始化的超级管理员用户名
      - --halo.security.initializer.superadminusername=admin
      # 初始化的超级管理员密码
      - --halo.security.initializer.superadminpassword=admin

  halodb:
    image: mysql:8.0.31
    container_name: halodb
    restart: on-failure:3
    networks:
      halo_network:
    command: 
      - --default-authentication-plugin=mysql_native_password
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_general_ci
      - --explicit_defaults_for_timestamp=true
    volumes:
      - ./mysql:/var/lib/mysql
      - ./mysqlBackup:/data/mysqlBackup
    ports:
      - "3366:3306"
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
      interval: 3s
      retries: 5
      start_period: 30s
    environment:
      # 请修改此密码,并对应修改上方 Halo 服务的 SPRING_R2DBC_PASSWORD 变量值
      - MYSQL_ROOT_PASSWORD=admin
      - MYSQL_DATABASE=halodb

networks:
  halo_network:

执行 docker compose up -d 之后 容器启动失败

不知道为什么 请问是哪里配置错误 麻烦指点一下 谢谢

Relevant log output
__  __      __
   / / / /___ _/ /___
  / /_/ / __ `/ / __ \
 / __  / /_/ / / /_/ /
/_/ /_/\__,_/_/\____/

Version: 2.4.2
2023-04-17T17:51:10.738+08:00  INFO 7 --- [           main] run.halo.app.Application                 : Starting Application v2.4.2 using Java 17.0.6 with PID 7 (/application/BOOT-INF/classes started by root in /application)
2023-04-17T17:51:10.742+08:00  INFO 7 --- [           main] run.halo.app.Application                 : No active profile set, falling back to 1 default profile: "default"
2023-04-17T17:51:12.226+08:00  INFO 7 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
2023-04-17T17:51:12.229+08:00  INFO 7 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
2023-04-17T17:51:12.443+08:00  INFO 7 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 199 ms. Found 1 R2DBC repository interfaces.
2023-04-17T17:51:13.088+08:00  INFO 7 --- [           main] c.g.j.r.m.MysqlConnectionFactoryProvider : set jasync.mysql.CLIENT_FOUND_ROWS=true
2023-04-17T17:51:13.133+08:00  INFO 7 --- [           main] c.github.jasync.sql.db.util.NettyUtils   : jasync available transport - native (epoll)
2023-04-17T17:51:14.001+08:00  INFO 7 --- [           main] org.pf4j.DefaultPluginStatusProvider     : Enabled plugins: []
2023-04-17T17:51:14.003+08:00  INFO 7 --- [           main] org.pf4j.DefaultPluginStatusProvider     : Disabled plugins: []
2023-04-17T17:51:14.005+08:00  INFO 7 --- [           main] org.pf4j.DefaultPluginManager            : PF4J version 3.9.0 in 'deployment' mode
2023-04-17T17:51:16.020+08:00  INFO 7 --- [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 5 endpoint(s) beneath base path '/actuator'
2023-04-17T17:51:16.415+08:00 ERROR 7 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.424+08:00 ERROR 7 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.431+08:00  WARN 7 --- [           main] onfigReactiveWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'r2dbcScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/R2dbcInitializationConfiguration.class]: Failed to execute database script
2023-04-17T17:51:16.434+08:00 ERROR 7 --- [-netty-thread-6] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.441+08:00  INFO 7 --- [           main] r.h.a.e.c.DefaultControllerManager       : Shutting down 0 controllers...
2023-04-17T17:51:16.442+08:00 ERROR 7 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.444+08:00 ERROR 7 --- [-netty-thread-6] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.445+08:00 ERROR 7 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.446+08:00 ERROR 7 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.447+08:00 ERROR 7 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.445+08:00 ERROR 7 --- [-netty-thread-6] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.448+08:00  INFO 7 --- [           main] r.h.a.e.c.DefaultControllerManager       : Shutdown 0 controllers.
2023-04-17T17:51:16.451+08:00 ERROR 7 --- [-netty-thread-8] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.452+08:00 ERROR 7 --- [-netty-thread-8] c.g.jasync.sql.db.mysql.MySQLConnection  :  Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.23.0.3' (using password: YES))
2023-04-17T17:51:16.449+08:00  INFO 7 --- [           main] r.h.a.e.controller.DefaultController     : Disposing controller garbage-collector-controller
2023-04-17T17:51:16.454+08:00  INFO 7 --- [           main] r.h.a.e.controller.DefaultController     : Controller garbage-collector-controller is disposed
2023-04-17T17:51:16.491+08:00  INFO 7 --- [           main] .s.b.a.l.ConditionEvaluationReportLogger : 

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
2023-04-17T17:51:16.510+08:00 ERROR 7 --- [           main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'r2dbcScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/R2dbcInitializationConfiguration.class]: Failed to execute database script
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1770) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) ~[spring-beans-6.0.7.jar:6.0.7]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917) ~[spring-context-6.0.7.jar:6.0.7]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:584) ~[spring-context-6.0.7.jar:6.0.7]
    at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-3.0.5.jar:3.0.5]
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) ~[spring-boot-3.0.5.jar:3.0.5]
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:434) ~[spring-boot-3.0.5.jar:3.0.5]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:310) ~[spring-boot-3.0.5.jar:3.0.5]
    at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:150) ~[spring-boot-3.0.5.jar:3.0.5]
    at run.halo.app.Application.main(Application.java:28) ~[classes/:2.4.2]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[application/:na]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[application/:na]
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[application/:na]
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[application/:na]
Caused by: org.springframework.r2dbc.connection.init.UncategorizedScriptException: Failed to execute database script
    at org.springframework.r2dbc.connection.init.DatabasePopulator.lambda$populate$4(DatabasePopulator.java:65) ~[spring-r2dbc-6.0.7.jar:6.0.7]
    at reactor.core.publisher.Mono.lambda$onErrorMap$27(Mono.java:3759) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.Mono.lambda$onErrorResume$29(Mono.java:3849) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.MonoUsingWhen$ResourceSubscriber.onError(MonoUsingWhen.java:203) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.Operators.error(Operators.java:198) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.MonoError.subscribe(MonoError.java:53) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.Mono.subscribe(Mono.java:4485) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:95) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:180) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.pool.AbstractPool$Borrower.fail(AbstractPool.java:475) ~[reactor-pool-1.0.0.jar:1.0.0]
    at reactor.pool.SimpleDequePool.lambda$drainLoop$9(SimpleDequePool.java:429) ~[reactor-pool-1.0.0.jar:1.0.0]
    at reactor.core.publisher.FluxDoOnEach$DoOnEachSubscriber.onError(FluxDoOnEach.java:186) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onError(FluxMapFuseable.java:340) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.MonoCompletionStage$MonoCompletionStageSubscription.apply(MonoCompletionStage.java:114) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.MonoCompletionStage$MonoCompletionStageSubscription.apply(MonoCompletionStage.java:64) ~[reactor-core-3.5.4.jar:3.5.4]
    at java.base/java.util.concurrent.CompletableFuture.uniHandle(Unknown Source) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(Unknown Source) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source) ~[na:na]
    at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(Unknown Source) ~[na:na]
    at com.github.jasync.sql.db.util.FutureUtilsKt.failed(FutureUtils.kt:18) ~[jasync-pool-2.1.23.jar:na]
    at com.github.jasync.sql.db.mysql.MySQLConnection.setException(MySQLConnection.kt:217) ~[jasync-mysql-2.1.23.jar:na]
    at com.github.jasync.sql.db.mysql.MySQLConnection.onError(MySQLConnection.kt:212) ~[jasync-mysql-2.1.23.jar:na]
    at com.github.jasync.sql.db.mysql.codec.MySQLConnectionHandler.channelRead0(MySQLConnectionHandler.kt:128) ~[jasync-mysql-2.1.23.jar:na]
    at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[netty-codec-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318) ~[netty-codec-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800) ~[netty-transport-classes-epoll-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:499) ~[netty-transport-classes-epoll-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:397) ~[netty-transport-classes-epoll-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.90.Final.jar:4.1.90.Final]
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.90.Final.jar:4.1.90.Final]
    at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
    Suppressed: java.lang.Exception: #block terminated with an error
        at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:99) ~[reactor-core-3.5.4.jar:3.5.4]
        at reactor.core.publisher.Mono.block(Mono.java:1710) ~[reactor-core-3.5.4.jar:3.5.4]
        at org.springframework.boot.r2dbc.init.R2dbcScriptDatabaseInitializer.runScripts(R2dbcScriptDatabaseInitializer.java:68) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.runScripts(AbstractScriptDatabaseInitializer.java:146) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applyScripts(AbstractScriptDatabaseInitializer.java:108) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applySchemaScripts(AbstractScriptDatabaseInitializer.java:98) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.initializeDatabase(AbstractScriptDatabaseInitializer.java:76) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.afterPropertiesSet(AbstractScriptDatabaseInitializer.java:66) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1816) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1766) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:598) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:973) ~[spring-beans-6.0.7.jar:6.0.7]
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:917) ~[spring-context-6.0.7.jar:6.0.7]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:584) ~[spring-context-6.0.7.jar:6.0.7]
        at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:434) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:310) ~[spring-boot-3.0.5.jar:3.0.5]
        at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:150) ~[spring-boot-3.0.5.jar:3.0.5]
        at run.halo.app.Application.main(Application.java:28) ~[classes/:2.4.2]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
        at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[application/:na]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[application/:na]
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[application/:na]
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[application/:na]
Caused by: org.springframework.dao.DataAccessResourceFailureException: Failed to obtain R2DBC Connection
    at org.springframework.r2dbc.connection.ConnectionFactoryUtils.lambda$getConnection$0(ConnectionFactoryUtils.java:90) ~[spring-r2dbc-6.0.7.jar:6.0.7]
    at reactor.core.publisher.Mono.lambda$onErrorMap$28(Mono.java:3773) ~[reactor-core-3.5.4.jar:3.5.4]
    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94) ~[reactor-core-3.5.4.jar:3.5.4]
    ... 36 common frames omitted
Caused by: com.github.jasync.sql.db.mysql.exceptions.MySQLException: Error 1045 - #28000 - Access denied for user 'root'@'172.23.0.3' (using password: YES)
    at com.github.jasync.sql.db.mysql.MySQLConnection.onError(MySQLConnection.kt:211) ~[jasync-mysql-2.1.23.jar:na]
    ... 20 common frames omitted
Additional information

以下是halodb日志 2023-04-17 09:44:21+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.31-1.el8 started. 2023-04-17 09:44:21+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' 2023-04-17 09:44:21+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.31-1.el8 started. '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock' 2023-04-17T09:44:21.728270Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead. 2023-04-17T09:44:21.729840Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead. 2023-04-17T09:44:21.729868Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.31) starting as process 1 2023-04-17T09:44:21.736197Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 2023-04-17T09:44:22.026334Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended. 2023-04-17T09:44:22.165992Z 0 [System] [MY-010229] [Server] Starting XA crash recovery... 2023-04-17T09:44:22.175883Z 0 [System] [MY-010232] [Server] XA crash recovery finished. 2023-04-17T09:44:22.216638Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed. 2023-04-17T09:44:22.216675Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel. 2023-04-17T09:44:22.223580Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory. 2023-04-17T09:44:22.247246Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock 2023-04-17T09:44:22.247278Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.31' socket: '/var/run/mysqld/mysqld.sock' port: 3306 MySQL Community Server - GPL.

回答

6

根据你提供的 docker-compose 文件无法复现。

image
6

你有没有发现你mysql用的5.7但是镜像用的是 【halodb: image: mysql:8.0.31】

可能的报错原因:本机的mysql5 占用docker mysql 8.0的端口 解决办法:关掉你的mysql5,重启 docker

6

如果是全新环境,建议铲掉重新来。