docker-compose 配置文件如下

version: "3"
  
services:
  halo:
    image: halohub/halo:2.1.0
    container_name: halo2
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    security_opt:
      - seccomp:unconfined
    volumes:
      - ./:/root/.halo2
    ports:
      - "8091:8090"
    environment:
      - SPRING_R2DBC_URL=r2dbc:pool:mysql://halodb:3306/halo
      - SPRING_R2DBC_USERNAME=root
      # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
      - SPRING_R2DBC_PASSWORD=dm0104x.
      - SPRING_SQL_INIT_PLATFORM=mysql
      # 外部访问地址,请根据实际需要修改
      - HALO_EXTERNAL_URL=http://localhost:8091/
      # 初始化的超级管理员用户名
      - HALO_SECURITY_INITIALIZER_SUPERADMINUSERNAME=yoke
      # 初始化的超级管理员密码
      - HALO_SECURITY_INITIALIZER_SUPERADMINPASSWORD=dm0104x.

  halodb:
    image: mysql:8.0.27
    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:
"docker-compose.yaml" 58L, 1705C                                                                                                                  20,60         Top

运行后报错

halo2   | 
halo2   |     __  __      __
halo2   |    / / / /___ _/ /___
halo2   |   / /_/ / __ `/ / __ \
halo2   |  / __  / /_/ / / /_/ /
halo2   | /_/ /_/\__,_/_/\____/
halo2   | 
halo2   | Version: 2.1.0
halo2   | 2023-01-04T16:27:46.629+08:00  INFO 6 --- [           main] run.halo.app.Application                 : Starting Application v2.1.0 using Java 17.0.5 with PID 6 (/application/BOOT-INF/classes started by root in /application)
halo2   | 2023-01-04T16:27:46.634+08:00  INFO 6 --- [           main] run.halo.app.Application                 : No active profile set, falling back to 1 default profile: "default"
halo2   | 2023-01-04T16:27:48.469+08:00  INFO 6 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode
halo2   | 2023-01-04T16:27:48.472+08:00  INFO 6 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data R2DBC repositories in DEFAULT mode.
halo2   | 2023-01-04T16:27:48.692+08:00  INFO 6 --- [           main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 214 ms. Found 1 R2DBC repository interfaces.
halo2   | 2023-01-04T16:27:49.871+08:00  INFO 6 --- [           main] c.g.j.r.m.MysqlConnectionFactoryProvider : set jasync.mysql.CLIENT_FOUND_ROWS=true
halo2   | 2023-01-04T16:27:49.974+08:00  INFO 6 --- [           main] c.github.jasync.sql.db.util.NettyUtils   : jasync available transport - native (epoll)
halo2   | 2023-01-04T16:27:50.478+08:00  INFO 6 --- [           main] org.pf4j.DefaultPluginStatusProvider     : Enabled plugins: []
halo2   | 2023-01-04T16:27:50.481+08:00  INFO 6 --- [           main] org.pf4j.DefaultPluginStatusProvider     : Disabled plugins: []
halo2   | 2023-01-04T16:27:50.483+08:00  INFO 6 --- [           main] org.pf4j.DefaultPluginManager            : PF4J version 3.8.0 in 'deployment' mode
halo2   | 2023-01-04T16:27:52.966+08:00  INFO 6 --- [           main] o.s.b.a.e.web.EndpointLinksResolver      : Exposing 1 endpoint(s) beneath base path '/actuator'
halo2   | 2023-01-04T16:27:53.651+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-1> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.678+08:00 ERROR 6 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-2> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.686+08:00  WARN 6 --- [           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
halo2   | 2023-01-04T16:27:53.689+08:00  INFO 6 --- [           main] r.h.a.e.c.DefaultControllerManager       : Shutting down 0 controllers...
halo2   | 2023-01-04T16:27:53.693+08:00  INFO 6 --- [           main] r.h.a.e.c.DefaultControllerManager       : Shutdown 0 controllers.
halo2   | 2023-01-04T16:27:53.694+08:00  INFO 6 --- [           main] r.h.a.e.controller.DefaultController     : Disposing controller garbage-collector-controller
halo2   | 2023-01-04T16:27:53.695+08:00  INFO 6 --- [           main] r.h.a.e.controller.DefaultController     : Controller garbage-collector-controller is disposed
halo2   | 2023-01-04T16:27:53.699+08:00  WARN 6 --- [pool-4-thread-1] run.halo.app.metrics.VisitLogWriter      : VisitLogWrite thread [pool-4-thread-1] interrupted
halo2   | 2023-01-04T16:27:53.740+08:00 ERROR 6 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-4> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.761+08:00 ERROR 6 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-6> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.767+08:00 ERROR 6 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-8> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.772+08:00  INFO 6 --- [           main] .s.b.a.l.ConditionEvaluationReportLogger : 
halo2   | 
halo2   | Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
halo2   | 2023-01-04T16:27:53.774+08:00 ERROR 6 --- [-netty-thread-4] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-10> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.822+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-3> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.824+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-5> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.826+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-7> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.829+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-9> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.835+08:00 ERROR 6 --- [-netty-thread-2] c.g.jasync.sql.db.mysql.MySQLConnection  : <mysql-connection-11> Received an error message -> ErrorMessage(errorCode=1045, sqlState=#28000, errorMessage=Access denied for user 'root'@'172.21.0.3' (using password: YES))
halo2   | 2023-01-04T16:27:53.844+08:00 ERROR 6 --- [           main] o.s.boot.SpringApplication               : Application run failed
halo2   | 
halo2   | 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
halo2   |       at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1751) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:961) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:915) ~[spring-context-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:584) ~[spring-context-6.0.3.jar:6.0.3]
halo2   |       at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:730) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:432) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at org.springframework.boot.SpringApplication.run(SpringApplication.java:1302) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at org.springframework.boot.SpringApplication.run(SpringApplication.java:1291) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |       at run.halo.app.Application.main(Application.java:25) ~[classes/:2.1.0]
halo2   |       at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
halo2   |       at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
halo2   |       at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
halo2   |       at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
halo2   |       at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[application/:na]
halo2   |       at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[application/:na]
halo2   |       at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[application/:na]
halo2   |       at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[application/:na]
halo2   | Caused by: org.springframework.r2dbc.connection.init.UncategorizedScriptException: Failed to execute database script
halo2   |       at org.springframework.r2dbc.connection.init.DatabasePopulator.lambda$populate$4(DatabasePopulator.java:65) ~[spring-r2dbc-6.0.3.jar:6.0.3]
halo2   |       at reactor.core.publisher.Mono.lambda$onErrorMap$27(Mono.java:3749) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.Mono.lambda$onErrorResume$29(Mono.java:3839) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.MonoUsingWhen$ResourceSubscriber.onError(MonoUsingWhen.java:203) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.Operators.error(Operators.java:198) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.MonoError.subscribe(MonoError.java:53) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.Mono.subscribe(Mono.java:4444) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxRetry$RetrySubscriber.onError(FluxRetry.java:95) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.MonoFlatMap$FlatMapMain.onError(MonoFlatMap.java:180) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.pool.AbstractPool$Borrower.fail(AbstractPool.java:475) ~[reactor-pool-1.0.0.jar:1.0.0]
halo2   |       at reactor.pool.SimpleDequePool.lambda$drainLoop$9(SimpleDequePool.java:429) ~[reactor-pool-1.0.0.jar:1.0.0]
halo2   |       at reactor.core.publisher.FluxDoOnEach$DoOnEachSubscriber.onError(FluxDoOnEach.java:186) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxMapFuseable$MapFuseableConditionalSubscriber.onError(FluxMapFuseable.java:340) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.MonoCompletionStage$MonoCompletionStageSubscription.apply(MonoCompletionStage.java:117) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.MonoCompletionStage$MonoCompletionStageSubscription.apply(MonoCompletionStage.java:64) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at java.base/java.util.concurrent.CompletableFuture.uniHandle(Unknown Source) ~[na:na]
halo2   |       at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(Unknown Source) ~[na:na]
halo2   |       at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source) ~[na:na]
halo2   |       at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(Unknown Source) ~[na:na]
halo2   |       at com.github.jasync.sql.db.util.FutureUtilsKt.failed(FutureUtils.kt:18) ~[jasync-pool-2.1.7.jar:na]
halo2   |       at com.github.jasync.sql.db.mysql.MySQLConnection.setException(MySQLConnection.kt:204) ~[jasync-mysql-2.1.7.jar:na]
halo2   |       at com.github.jasync.sql.db.mysql.MySQLConnection.onError(MySQLConnection.kt:199) ~[jasync-mysql-2.1.7.jar:na]
halo2   |       at com.github.jasync.sql.db.mysql.codec.MySQLConnectionHandler.channelRead0(MySQLConnectionHandler.kt:125) ~[jasync-mysql-2.1.7.jar:na]
halo2   |       at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[netty-codec-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318) ~[netty-codec-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800) ~[netty-transport-classes-epoll-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:499) ~[netty-transport-classes-epoll-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:397) ~[netty-transport-classes-epoll-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.86.Final.jar:4.1.86.Final]
halo2   |       at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]
halo2   |       Suppressed: java.lang.Exception: #block terminated with an error
halo2   |               at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:99) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |               at reactor.core.publisher.Mono.block(Mono.java:1710) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |               at org.springframework.boot.r2dbc.init.R2dbcScriptDatabaseInitializer.runScripts(R2dbcScriptDatabaseInitializer.java:68) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.runScripts(AbstractScriptDatabaseInitializer.java:146) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applyScripts(AbstractScriptDatabaseInitializer.java:108) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.applySchemaScripts(AbstractScriptDatabaseInitializer.java:98) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.initializeDatabase(AbstractScriptDatabaseInitializer.java:76) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.sql.init.AbstractScriptDatabaseInitializer.afterPropertiesSet(AbstractScriptDatabaseInitializer.java:66) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1797) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1747) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:521) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:961) ~[spring-beans-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:915) ~[spring-context-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:584) ~[spring-context-6.0.3.jar:6.0.3]
halo2   |               at org.springframework.boot.web.reactive.context.ReactiveWebServerApplicationContext.refresh(ReactiveWebServerApplicationContext.java:66) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:730) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:432) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.SpringApplication.run(SpringApplication.java:1302) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at org.springframework.boot.SpringApplication.run(SpringApplication.java:1291) ~[spring-boot-3.0.1.jar:3.0.1]
halo2   |               at run.halo.app.Application.main(Application.java:25) ~[classes/:2.1.0]
halo2   |               at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
halo2   |               at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
halo2   |               at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
halo2   |               at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]
halo2   |               at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[application/:na]
halo2   |               at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[application/:na]
halo2   |               at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[application/:na]
halo2   |               at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[application/:na]
halo2   | Caused by: org.springframework.dao.DataAccessResourceFailureException: Failed to obtain R2DBC Connection
halo2   |       at org.springframework.r2dbc.connection.ConnectionFactoryUtils.lambda$getConnection$0(ConnectionFactoryUtils.java:90) ~[spring-r2dbc-6.0.3.jar:6.0.3]
halo2   |       at reactor.core.publisher.Mono.lambda$onErrorMap$28(Mono.java:3763) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94) ~[reactor-core-3.5.1.jar:3.5.1]
halo2   |       ... 36 common frames omitted
halo2   | Caused by: com.github.jasync.sql.db.mysql.exceptions.MySQLException: Error 1045 - #28000 - Access denied for user 'root'@'172.21.0.3' (using password: YES)
halo2   |       at com.github.jasync.sql.db.mysql.MySQLConnection.onError(MySQLConnection.kt:198) ~[jasync-mysql-2.1.7.jar:na]
halo2   |       ... 20 common frames omitted
halo2   | 
halo2 exited with code 1

麻烦请问一下这是怎么回事???

    yoke0104x

    version: "3"
      
    services:
      halo:
        image: halohub/halo:2.1.0
        container_name: halo2
        restart: on-failure:3
        depends_on:
          halodb:
            condition: service_healthy
        networks:
          halo_network:
        security_opt:
          - seccomp:unconfined
        volumes:
          - ./:/root/.halo2
        ports:
          - "8091:8090"
        environment:
          - SPRING_R2DBC_URL=r2dbc:pool:mysql://halodb:3306/halo
          - SPRING_R2DBC_USERNAME=root
          # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
          - SPRING_R2DBC_PASSWORD=dm0104x.
          - SPRING_SQL_INIT_PLATFORM=mysql
          # 外部访问地址,请根据实际需要修改
          - HALO_EXTERNAL_URL=http://localhost:8091/
          # 初始化的超级管理员用户名
          - HALO_SECURITY_INITIALIZER_SUPERADMINUSERNAME=yoke
          # 初始化的超级管理员密码
          - HALO_SECURITY_INITIALIZER_SUPERADMINPASSWORD=dm0104x.
    
      halodb:
        image: mysql:8.0.27
        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:
          - "14506: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=dm0104x.
          - MYSQL_DATABASE=halo
    
    networks:
      halo_network:
      1 个月 后
      16 天 后