shenyu icon indicating copy to clipboard operation
shenyu copied to clipboard

[BUG] Docker-Compose shenyu services image not support arm64(Raspberry Pi 4 Model B) architecture

Open myesn opened this issue 2 years ago β€’ 13 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Current Behavior

Docker-Compose file:

master/shenyu-dist/shenyu-docker-compose-dist/src/main/resources/stand-alone-mysql/docker-compose.yaml

shenyu-admin Docker file: master/shenyu-dist/shenyu-admin-dist/Dockerfile

shenyu-bootstrap Docker file: master/shenyu-dist/shenyu-bootstrap-dist/Dockerfile

I noticed that shenyu-admin and shenyu-bootstrap are both built on the openjdk:8-jre-alpine image, but this image does not support the arm64 CPU architecture of the Raspberry Pi 4 Model B, which prevents the shenyu services from running successfully.

The openjdk:8-jre-alpine image does not support the arm64 CPU architecture: image

Expected Behavior

Make it work, thanks.

Steps To Reproduce

An error occurs after executing the following command:

curl https://raw.githubusercontent.com/apache/incubator-shenyu/master/shenyu-dist/shenyu-docker-compose-dist/src/main/resources/install.sh | bash -s master mysql

Environment

ShenYu version(s): 2.4.2

Debug logs

ubuntu@ubuntu:~/apache-shenyu/shenyu-master$ docker-compose ps
      Name                    Command                  State                        Ports
-----------------------------------------------------------------------------------------------------------
db                 /usr/local/bin/docker-entr ...   Up (healthy)   0.0.0.0:3310->3306/tcp,:::3310->3306/tcp
shenyu-admin       /bin/sh entrypoint.sh            Exit 1
shenyu-bootstrap   /bin/sh entrypoint.sh            Exit 1
ubuntu@ubuntu:~/apache-shenyu/shenyu-master$ docker-compose logs -f shenyu-admin
Attaching to shenyu-admin
shenyu-admin        | standard_init_linux.go:228: exec user process caused: exec format error
shenyu-admin        | standard_init_linux.go:228: exec user process caused: exec format error
shenyu-admin exited with code 1
ubuntu@ubuntu:~/apache-shenyu/shenyu-master$ docker-compose logs -f shenyu-bootstrap
Attaching to shenyu-bootstrap
shenyu-bootstrap    | standard_init_linux.go:228: exec user process caused: exec format error
shenyu-bootstrap    | standard_init_linux.go:228: exec user process caused: exec format error
shenyu-bootstrap exited with code 1

Anything else?

Using the arm64v8/openjdk:8-jre image in our project can run successfully(I'm actually using arm64v8/openjdk:8 πŸ˜‚).

myesn avatar Apr 01 '22 08:04 myesn

Hi @myesn, openjdk:8-jre-alpine can support arm64.

image

BTW, Do you have a mirror for building shenyu locally? It may be that the shenyu image in docker hub does not support arm64.

JooKS-me avatar Apr 01 '22 08:04 JooKS-me

Sorry, I forgot to click the more button.

BTW, Do you have a mirror for building shenyu locally? It may be that the shenyu image in docker hub does not support arm64.

I doesn't have a mirror for shenyu.

How should I go about solving this problem?

myesn avatar Apr 01 '22 08:04 myesn

First, delete the shenyu image on your machine.

There is a temporary solution, you can first download the source code of the release to the machine you want to deploy, unzip it and execute it in the root directory of the project

mvn clean install -Dmaven.javadoc.skip=true -B -Drat.skip=true -Djacoco.skip=true -DskipITs -DskipTests -Prelease,docker

This way, you will have the appropriate image on your machine, you can check it with docker images.

JooKS-me avatar Apr 01 '22 08:04 JooKS-me

@myesn Here are some additional suggestions, please refer mainly to the previous comment. I am using mac m1 which is also arm architecture. You might consider building the image locally to run the project. See the first part of this link on how to build the image locally.

Here is a screenshot of my docker repository, I can run shenyu-admin and shenyu-bootstarp normally.

image image

erdengk avatar Apr 01 '22 08:04 erdengk

Thanks a lot, I'll try it later, and if it works, I'll close this issue.

myesn avatar Apr 01 '22 09:04 myesn

@JooKS-me @erdengk After shenyu-bootstrap runs, after processing several http requests, this error occurs and shenyu-bootstrap stops running:

shenyu-bootstrap    | #
shenyu-bootstrap    | # A fatal error has been detected by the Java Runtime Environment:
shenyu-bootstrap    | #
shenyu-bootstrap    | #  Internal Error (assembler_aarch64.hpp:1156), pid=33, tid=0x0000ffffad4a6aa0
shenyu-bootstrap    | #  guarantee(Rs != Rn && Rs != Rt) failed: unpredictable instruction
shenyu-bootstrap    | #
shenyu-bootstrap    | # JRE version: OpenJDK Runtime Environment (8.0_212-b04) (build 1.8.0_212-b04)
shenyu-bootstrap    | # Java VM: OpenJDK 64-Bit Server VM (25.212-b04 mixed mode linux-aarch64 compressed oops)
shenyu-bootstrap    | # Derivative: IcedTea 3.12.0
shenyu-bootstrap    | # Distribution: Custom build (Sat May  4 17:44:26 UTC 2019)
shenyu-bootstrap    | # Core dump written. Default location: /opt/shenyu-bootstrap/core or core.33
shenyu-bootstrap    | #
shenyu-bootstrap    | # An error report file with more information is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/hs_err_pid33.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # Compiler replay data is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/replay_pid33.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # If you would like to submit a bug report, please include
shenyu-bootstrap    | # instructions on how to reproduce the bug and visit:
shenyu-bootstrap    | #   https://icedtea.classpath.org/bugzilla
shenyu-bootstrap    | #
Click to view detail log
ubuntu@ubuntu:~/shenyu/docker/shenyu-v2.4.2$ docker-compose logs -f shenyu-bootstrap
Attaching to shenyu-bootstrap
shenyu-bootstrap    | current jdk version:1.8.0_212
shenyu-bootstrap    | sh: =~: unknown operand
shenyu-bootstrap    | sh: =~: unknown operand
shenyu-bootstrap    | sh: =~: unknown operand
shenyu-bootstrap    | Starting the ShenYu-Bootstrap ...
shenyu-bootstrap    | Please check the log files: /opt/shenyu-bootstrap/logs/shenyu-bootstrap.log
shenyu-bootstrap    | # An error report file with more information is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/hs_err_pid35.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # Compiler replay data is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/replay_pid35.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # If you would like to submit a bug report, please include
shenyu-bootstrap    | # instructions on how to reproduce the bug and visit:
shenyu-bootstrap    | #   https://icedtea.classpath.org/bugzilla
shenyu-bootstrap    | #
shenyu-bootstrap    | 09:47:42,098 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
shenyu-bootstrap    | 09:47:42,104 |-INFO in ch.qos.logback.core.joran.action.ShutdownHookAction - About to instantiate shutdown hook of type [ch.qos.logback.core.hook.DelayingShutdownHook]
shenyu-bootstrap    | 09:47:42,142 |-INFO in ch.qos.logback.core.joran.action.StatusListenerAction - Added status listener of type [ch.qos.logback.core.status.OnConsoleStatusListener]
shenyu-bootstrap    | 09:47:42,298 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
shenyu-bootstrap    | 09:47:42,318 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
shenyu-bootstrap    | 09:47:42,357 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:42,535 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:42,544 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:42,549 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:42,550 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Attaching appender named [STDOUT] to AsyncAppender.
shenyu-bootstrap    | 09:47:42,552 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:42,553 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:42,566 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
shenyu-bootstrap    | 09:47:42,597 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1122805102 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:42,610 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1122805102 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:42,625 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1122805102 - Will use zip compression
shenyu-bootstrap    | 09:47:42,631 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1122805102 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log for the active file
shenyu-bootstrap    | 09:47:42,644 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@396e2f39 - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log.zip'.
shenyu-bootstrap    | 09:47:42,644 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@396e2f39 - Roll-over at midnight.
shenyu-bootstrap    | 09:47:42,659 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@396e2f39 - Setting initial period to Wed Apr 06 09:47:42 GMT 2022
shenyu-bootstrap    | 09:47:42,669 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:42,678 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: ./logs/shenyu-bootstrap.log
shenyu-bootstrap    | 09:47:42,679 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [./logs/shenyu-bootstrap.log]
shenyu-bootstrap    | 09:47:42,683 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:42,683 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_FILE]
shenyu-bootstrap    | 09:47:42,685 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_FILE]
shenyu-bootstrap    | 09:47:42,686 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Attaching appender named [FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:42,686 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:42,687 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:42,687 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ERROR_FILE]
shenyu-bootstrap    | 09:47:42,703 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@897074030 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:42,704 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@897074030 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:42,706 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@897074030 - Will use zip compression
shenyu-bootstrap    | 09:47:42,707 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@897074030 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log for the active file
shenyu-bootstrap    | 09:47:42,711 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@706a04ae - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log.zip'.
shenyu-bootstrap    | 09:47:42,711 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@706a04ae - Roll-over at midnight.
shenyu-bootstrap    | 09:47:42,713 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@706a04ae - Setting initial period to Wed Apr 06 08:22:52 GMT 2022
shenyu-bootstrap    | 09:47:42,716 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:42,719 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - Active log file name: ./logs/shenyu-bootstrap-error.log
shenyu-bootstrap    | 09:47:42,720 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - File property is set to [./logs/shenyu-bootstrap-error.log]
shenyu-bootstrap    | 09:47:42,721 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:42,721 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:42,724 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:42,724 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Attaching appender named [ERROR_FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:42,724 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:42,725 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
shenyu-bootstrap    | 09:47:42,726 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_STDOUT] to Logger[ROOT]
shenyu-bootstrap    | 09:47:42,727 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:42,727 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_ERROR_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:42,728 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
shenyu-bootstrap    | 09:47:42,731 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@67b467e9 - Registering current configuration as safe fallback point
shenyu-bootstrap    | 09:47:49,546 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:49,550 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:49,554 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:49,559 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:49,559 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:49,560 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:49,627 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
shenyu-bootstrap    | 09:47:49,629 |-INFO in ch.qos.logback.core.joran.action.ShutdownHookAction - About to instantiate shutdown hook of type [ch.qos.logback.core.hook.DelayingShutdownHook]
shenyu-bootstrap    | 09:47:49,629 |-INFO in ch.qos.logback.core.joran.action.StatusListenerAction - Added status listener of type [ch.qos.logback.core.status.OnConsoleStatusListener]
shenyu-bootstrap    | 09:47:49,635 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
shenyu-bootstrap    | 09:47:49,635 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
shenyu-bootstrap    | 09:47:49,637 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:49,643 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:49,644 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:49,646 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:49,647 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Attaching appender named [STDOUT] to AsyncAppender.
shenyu-bootstrap    | 09:47:49,647 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:49,657 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:49,657 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
shenyu-bootstrap    | 09:47:49,672 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1424082571 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:49,673 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1424082571 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:49,687 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1424082571 - Will use zip compression
shenyu-bootstrap    | 09:47:49,688 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1424082571 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log for the active file
shenyu-bootstrap    | 09:47:49,706 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@53aac487 - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log.zip'.
shenyu-bootstrap    | 09:47:49,707 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@53aac487 - Roll-over at midnight.
shenyu-bootstrap    | 09:47:49,708 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@53aac487 - Setting initial period to Wed Apr 06 09:47:49 GMT 2022
shenyu-bootstrap    | 09:47:49,723 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:49,728 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: ./logs/shenyu-bootstrap.log
shenyu-bootstrap    | 09:47:49,729 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [./logs/shenyu-bootstrap.log]
shenyu-bootstrap    | 09:47:49,729 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:49,738 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_FILE]
shenyu-bootstrap    | 09:47:49,740 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_FILE]
shenyu-bootstrap    | 09:47:49,741 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Attaching appender named [FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:49,741 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:49,750 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:49,750 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ERROR_FILE]
shenyu-bootstrap    | 09:47:49,771 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1387380406 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:49,771 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1387380406 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:49,772 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1387380406 - Will use zip compression
shenyu-bootstrap    | 09:47:49,773 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1387380406 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log for the active file
shenyu-bootstrap    | 09:47:49,785 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@273e7444 - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log.zip'.
shenyu-bootstrap    | 09:47:49,786 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@273e7444 - Roll-over at midnight.
shenyu-bootstrap    | 09:47:49,787 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@273e7444 - Setting initial period to Wed Apr 06 08:22:52 GMT 2022
shenyu-bootstrap    | 09:47:49,797 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:49,801 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - Active log file name: ./logs/shenyu-bootstrap-error.log
shenyu-bootstrap    | 09:47:49,801 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - File property is set to [./logs/shenyu-bootstrap-error.log]
shenyu-bootstrap    | 09:47:49,810 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:49,811 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:49,813 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:49,813 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Attaching appender named [ERROR_FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:49,814 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:49,845 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
shenyu-bootstrap    | 09:47:49,879 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@7db12bb6 - Propagating INFO level on Logger[ROOT] onto the JUL framework
shenyu-bootstrap    | 09:47:49,883 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_STDOUT] to Logger[ROOT]
shenyu-bootstrap    | 09:47:49,884 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:49,885 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_ERROR_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:49,885 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
shenyu-bootstrap    | 09:47:49,886 |-INFO in org.springframework.boot.logging.logback.SpringBootJoranConfigurator@771a660 - Registering current configuration as safe fallback point
shenyu-bootstrap    | 2022-04-06 09:47:50 [main] INFO  org.apache.shenyu.web.logo.ShenyuLogo -
shenyu-bootstrap    |
shenyu-bootstrap    |
shenyu-bootstrap    |    _____ _
shenyu-bootstrap    |   / ____| |
shenyu-bootstrap    |  | (___ | |__   ___ _ __  _   _ _   _
shenyu-bootstrap    |   \___ \| '_ \ / _ \ '_ \| | | | | | |
shenyu-bootstrap    |   ____) | | | |  __/ | | | |_| | |_| |
shenyu-bootstrap    |  |_____/|_| |_|\___|_| |_|\__, |\__,_|
shenyu-bootstrap    |                            __/ |
shenyu-bootstrap    |                           |___/
shenyu-bootstrap    |  :: Shenyu :: (v2.4.2)
shenyu-bootstrap    |
shenyu-bootstrap    | 2022-04-06 09:47:50 [main] INFO  org.apache.shenyu.web.logo.ShenyuLogo -
shenyu-bootstrap    |
shenyu-bootstrap    |
shenyu-bootstrap    |    _____ _
shenyu-bootstrap    |   / ____| |
shenyu-bootstrap    |  | (___ | |__   ___ _ __  _   _ _   _
shenyu-bootstrap    |   \___ \| '_ \ / _ \ '_ \| | | | | | |
shenyu-bootstrap    |   ____) | | | |  __/ | | | |_| | |_| |
shenyu-bootstrap    |  |_____/|_| |_|\___|_| |_|\__, |\__,_|
shenyu-bootstrap    |                            __/ |
shenyu-bootstrap    |                           |___/
shenyu-bootstrap    |  :: Shenyu :: (v2.4.2)
shenyu-bootstrap    |
shenyu-bootstrap    | 09:47:54,937 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:54,939 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:54,942 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:54,950 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:54,951 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Worker thread will flush remaining events before exiting.
shenyu-bootstrap    | 09:47:54,953 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Queue flush finished successfully within timeout.
shenyu-bootstrap    | 09:47:54,983 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
shenyu-bootstrap    | 09:47:54,985 |-INFO in ch.qos.logback.core.joran.action.ShutdownHookAction - About to instantiate shutdown hook of type [ch.qos.logback.core.hook.DelayingShutdownHook]
shenyu-bootstrap    | 09:47:54,986 |-INFO in ch.qos.logback.core.joran.action.StatusListenerAction - Added status listener of type [ch.qos.logback.core.status.OnConsoleStatusListener]
shenyu-bootstrap    | 09:47:54,988 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
shenyu-bootstrap    | 09:47:54,988 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
shenyu-bootstrap    | 09:47:54,990 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:54,993 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:54,993 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:54,995 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT]
shenyu-bootstrap    | 09:47:54,996 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Attaching appender named [STDOUT] to AsyncAppender.
shenyu-bootstrap    | 09:47:54,996 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_STDOUT] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:54,997 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:54,997 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [FILE]
shenyu-bootstrap    | 09:47:55,003 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@735228558 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:55,011 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@735228558 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:55,012 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@735228558 - Will use zip compression
shenyu-bootstrap    | 09:47:55,013 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@735228558 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log for the active file
shenyu-bootstrap    | 09:47:55,018 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@16746061 - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}.%i.log.zip'.
shenyu-bootstrap    | 09:47:55,019 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@16746061 - Roll-over at midnight.
shenyu-bootstrap    | 09:47:55,021 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@16746061 - Setting initial period to Wed Apr 06 09:47:55 GMT 2022
shenyu-bootstrap    | 09:47:55,023 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:55,028 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: ./logs/shenyu-bootstrap.log
shenyu-bootstrap    | 09:47:55,028 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [./logs/shenyu-bootstrap.log]
shenyu-bootstrap    | 09:47:55,029 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:55,030 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_FILE]
shenyu-bootstrap    | 09:47:55,032 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_FILE]
shenyu-bootstrap    | 09:47:55,032 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Attaching appender named [FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:55,033 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:55,042 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
shenyu-bootstrap    | 09:47:55,043 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ERROR_FILE]
shenyu-bootstrap    | 09:47:55,049 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1476235721 - setting totalSizeCap to 10 GB
shenyu-bootstrap    | 09:47:55,049 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1476235721 - Archive files will be limited to [100 MB] each.
shenyu-bootstrap    | 09:47:55,053 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1476235721 - Will use zip compression
shenyu-bootstrap    | 09:47:55,063 |-INFO in c.q.l.core.rolling.SizeAndTimeBasedRollingPolicy@1476235721 - Will use the pattern ./logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log for the active file
shenyu-bootstrap    | 09:47:55,076 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@674658f7 - The date pattern is 'yyyy-MM-dd' from file name pattern './logs/shenyu-bootstrap.%d{yyyy-MM-dd}-error.%i.log.zip'.
shenyu-bootstrap    | 09:47:55,076 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@674658f7 - Roll-over at midnight.
shenyu-bootstrap    | 09:47:55,078 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@674658f7 - Setting initial period to Wed Apr 06 08:22:52 GMT 2022
shenyu-bootstrap    | 09:47:55,080 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
shenyu-bootstrap    | 09:47:55,083 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - Active log file name: ./logs/shenyu-bootstrap-error.log
shenyu-bootstrap    | 09:47:55,084 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[ERROR_FILE] - File property is set to [./logs/shenyu-bootstrap-error.log]
shenyu-bootstrap    | 09:47:55,085 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.classic.AsyncAppender]
shenyu-bootstrap    | 09:47:55,098 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:55,100 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ERROR_FILE] to ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE]
shenyu-bootstrap    | 09:47:55,101 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Attaching appender named [ERROR_FILE] to AsyncAppender.
shenyu-bootstrap    | 09:47:55,101 |-INFO in ch.qos.logback.classic.AsyncAppender[ASYNC_ERROR_FILE] - Setting discardingThreshold to 0
shenyu-bootstrap    | 09:47:55,110 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
shenyu-bootstrap    | 09:47:55,122 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[ROOT] onto the JUL framework
shenyu-bootstrap    | 09:47:55,123 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_STDOUT] to Logger[ROOT]
shenyu-bootstrap    | 09:47:55,124 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:55,124 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [ASYNC_ERROR_FILE] to Logger[ROOT]
shenyu-bootstrap    | 09:47:55,124 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
shenyu-bootstrap    | 09:47:55,125 |-INFO in org.springframework.boot.logging.logback.SpringBootJoranConfigurator@565b064f - Registering current configuration as safe fallback point
shenyu-bootstrap    | 09:47:55,173 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[org.springframework.boot] onto the JUL framework
shenyu-bootstrap    | 09:47:55,174 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[org.apache.ibatis] onto the JUL framework
shenyu-bootstrap    | 09:47:55,176 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[org.apache.shenyu.bonuspoint] onto the JUL framework
shenyu-bootstrap    | 09:47:55,177 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[org.apache.shenyu.lottery] onto the JUL framework
shenyu-bootstrap    | 09:47:55,179 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@5c8eee0f - Propagating INFO level on Logger[org.apache.shenyu] onto the JUL framework
shenyu-bootstrap    |
shenyu-bootstrap    |   .   ____          _            __ _ _
shenyu-bootstrap    |  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
shenyu-bootstrap    | ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
shenyu-bootstrap    |  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
shenyu-bootstrap    |   '  |____| .__|_| |_|_| |_\__, | / / / /
shenyu-bootstrap    |  =========|_|==============|___/=/_/_/_/
shenyu-bootstrap    |  :: Spring Boot ::        (v2.2.2.RELEASE)
shenyu-bootstrap    |
shenyu-bootstrap    | 2022-04-06 09:47:55 [main] INFO  org.apache.shenyu.bootstrap.ShenyuBootstrapApplication - The following profiles are active: local
shenyu-bootstrap    | 2022-04-06 09:47:55 [main] INFO  org.apache.shenyu.bootstrap.ShenyuBootstrapApplication - The following profiles are active: local
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 114ms. Found 0 Redis repository interfaces.
shenyu-bootstrap    | 2022-04-06 09:48:06 [main] INFO  org.springframework.data.repository.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 114ms. Found 0 Redis repository interfaces.
shenyu-bootstrap    | 2022-04-06 09:48:09 [main] INFO  org.springframework.cloud.context.scope.GenericScope - BeanFactory id=d9cc04e2-e5f3-39ce-97f0-cd5ae2518e9d
shenyu-bootstrap    | 2022-04-06 09:48:09 [main] INFO  org.springframework.cloud.context.scope.GenericScope - BeanFactory id=d9cc04e2-e5f3-39ce-97f0-cd5ae2518e9d
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig' of type [org.springframework.cloud.client.loadbalancer.reactive.LoadBalancerBeanPostProcessorAutoConfiguration$ReactorDeferringLoadBalancerFilterConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:11 [main] INFO  org.springframework.context.support.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'reactorDeferringLoadBalancerExchangeFilterFunction' of type [org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] WARN  com.netflix.config.sources.URLConfigurationSource - No URLs will be polled as dynamic configuration sources.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] INFO  com.netflix.config.sources.URLConfigurationSource - To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] WARN  com.netflix.config.sources.URLConfigurationSource - No URLs will be polled as dynamic configuration sources.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] INFO  com.netflix.config.sources.URLConfigurationSource - To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] WARN  com.netflix.config.sources.URLConfigurationSource - No URLs will be polled as dynamic configuration sources.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] WARN  com.netflix.config.sources.URLConfigurationSource - No URLs will be polled as dynamic configuration sources.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] INFO  com.netflix.config.sources.URLConfigurationSource - To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
shenyu-bootstrap    | 2022-04-06 09:48:18 [main] INFO  com.netflix.config.sources.URLConfigurationSource - To enable URLs as dynamic configuration sources, define System property archaius.configurationSource.additionalUrls or make config.properties available on classpath.
shenyu-bootstrap    | 2022-04-06 09:48:22 [main] INFO  org.springframework.boot.actuate.endpoint.web.EndpointLinksResolver - Exposing 2 endpoint(s) beneath base path '/actuator'
shenyu-bootstrap    | 2022-04-06 09:48:22 [main] INFO  org.springframework.boot.actuate.endpoint.web.EndpointLinksResolver - Exposing 2 endpoint(s) beneath base path '/actuator'
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[global] [org.apache.shenyu.plugin.global.GlobalPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sign] [org.apache.shenyu.plugin.sign.SignPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[jwt] [org.apache.shenyu.plugin.jwt.JwtPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[oauth2] [org.apache.shenyu.plugin.oauth2.OAuth2Plugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[waf] [org.apache.shenyu.plugin.waf.WafPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[rateLimiter] [org.apache.shenyu.plugin.ratelimiter.RateLimiterPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[global] [org.apache.shenyu.plugin.global.GlobalPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sign] [org.apache.shenyu.plugin.sign.SignPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[jwt] [org.apache.shenyu.plugin.jwt.JwtPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[oauth2] [org.apache.shenyu.plugin.oauth2.OAuth2Plugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[waf] [org.apache.shenyu.plugin.waf.WafPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[rateLimiter] [org.apache.shenyu.plugin.ratelimiter.RateLimiterPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[paramMapping] [org.apache.shenyu.plugin.param.mapping.ParamMappingPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[paramMapping] [org.apache.shenyu.plugin.param.mapping.ParamMappingPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[contextPath] [org.apache.shenyu.plugin.context.path.ContextPathPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[rewrite] [org.apache.shenyu.plugin.rewrite.RewritePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[contextPath] [org.apache.shenyu.plugin.context.path.ContextPathPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[rewrite] [org.apache.shenyu.plugin.rewrite.RewritePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[cryptorRequest] [org.apache.shenyu.plugin.cryptor.request.CryptorRequestPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[redirect] [org.apache.shenyu.plugin.redirect.RedirectPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[generalContext] [org.apache.shenyu.plugin.general.context.GeneralContextPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[hystrix] [org.apache.shenyu.plugin.hystrix.HystrixPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[cryptorRequest] [org.apache.shenyu.plugin.cryptor.request.CryptorRequestPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[redirect] [org.apache.shenyu.plugin.redirect.RedirectPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[generalContext] [org.apache.shenyu.plugin.general.context.GeneralContextPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[hystrix] [org.apache.shenyu.plugin.hystrix.HystrixPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sentinel] [org.apache.shenyu.plugin.sentinel.SentinelPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sentinel] [org.apache.shenyu.plugin.sentinel.SentinelPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[resilience4j] [org.apache.shenyu.plugin.resilience4j.Resilience4JPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[resilience4j] [org.apache.shenyu.plugin.resilience4j.Resilience4JPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[logging] [org.apache.shenyu.plugin.logging.LoggingPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[logging] [org.apache.shenyu.plugin.logging.LoggingPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[monitor] [org.apache.shenyu.plugin.monitor.MonitorPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[monitor] [org.apache.shenyu.plugin.monitor.MonitorPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[websocket] [org.apache.shenyu.plugin.websocket.WebSocketPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[websocket] [org.apache.shenyu.plugin.websocket.WebSocketPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[springCloud] [org.apache.shenyu.plugin.springcloud.SpringCloudPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[springCloud] [org.apache.shenyu.plugin.springcloud.SpringCloudPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[divide] [org.apache.shenyu.plugin.divide.DividePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[uri] [org.apache.shenyu.plugin.uri.URIPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[webClient] [org.apache.shenyu.plugin.httpclient.WebClientPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[modifyResponse] [org.apache.shenyu.plugin.modify.response.ModifyResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[divide] [org.apache.shenyu.plugin.divide.DividePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[uri] [org.apache.shenyu.plugin.uri.URIPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[webClient] [org.apache.shenyu.plugin.httpclient.WebClientPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[modifyResponse] [org.apache.shenyu.plugin.modify.response.ModifyResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[paramTransform] [org.apache.shenyu.plugin.base.RpcParamTransformPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[paramTransform] [org.apache.shenyu.plugin.base.RpcParamTransformPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[tars] [org.apache.shenyu.plugin.tars.TarsPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[dubbo] [org.apache.shenyu.plugin.apache.dubbo.ApacheDubboPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sofa] [org.apache.shenyu.plugin.sofa.SofaPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[grpc] [org.apache.shenyu.plugin.grpc.GrpcPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[tars] [org.apache.shenyu.plugin.tars.TarsPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[cryptorResponse] [org.apache.shenyu.plugin.cryptor.response.CryptorResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[dubbo] [org.apache.shenyu.plugin.apache.dubbo.ApacheDubboPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[sofa] [org.apache.shenyu.plugin.sofa.SofaPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[grpc] [org.apache.shenyu.plugin.grpc.GrpcPlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[cryptorResponse] [org.apache.shenyu.plugin.cryptor.response.CryptorResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[response] [org.apache.shenyu.plugin.response.ResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:25 [main] INFO  org.apache.shenyu.springboot.starter.gateway.ShenyuConfiguration - load plugin:[response] [org.apache.shenyu.plugin.response.ResponsePlugin]
shenyu-bootstrap    | 2022-04-06 09:48:27 [main] INFO  org.apache.shenyu.springboot.starter.sync.data.websocket.WebsocketSyncDataConfiguration - you use websocket sync shenyu data.......
shenyu-bootstrap    | 2022-04-06 09:48:27 [main] INFO  org.apache.shenyu.springboot.starter.sync.data.websocket.WebsocketSyncDataConfiguration - you use websocket sync shenyu data.......
shenyu-bootstrap    | 2022-04-06 09:48:28 [main] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:28 [main] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:34 [main] WARN  org.springframework.cloud.loadbalancer.config.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger - Spring Cloud LoadBalancer is currently working with default default cache. You can switch to using Caffeine cache, by adding it to the classpath.
shenyu-bootstrap    | 2022-04-06 09:48:34 [main] WARN  org.springframework.cloud.loadbalancer.config.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger - Spring Cloud LoadBalancer is currently working with default default cache. You can switch to using Caffeine cache, by adding it to the classpath.
shenyu-bootstrap    | 2022-04-06 09:48:36 [main] INFO  org.springframework.boot.web.embedded.netty.NettyWebServer - Netty started on port(s): 9195
shenyu-bootstrap    | 2022-04-06 09:48:36 [main] INFO  org.springframework.boot.web.embedded.netty.NettyWebServer - Netty started on port(s): 9195
shenyu-bootstrap    | 2022-04-06 09:48:36 [main] INFO  org.apache.shenyu.bootstrap.ShenyuBootstrapApplication - Started ShenyuBootstrapApplication in 50.992 seconds (JVM running for 56.568)
shenyu-bootstrap    | 2022-04-06 09:48:36 [main] INFO  org.apache.shenyu.bootstrap.ShenyuBootstrapApplication - Started ShenyuBootstrapApplication in 50.992 seconds (JVM running for 56.568)
shenyu-bootstrap    | 2022-04-06 09:48:38 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:38 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:48 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:48 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:58 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:48:58 [shenyu-websocket-connect-1] WARN  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is error.....
shenyu-bootstrap    | 2022-04-06 09:49:08 [shenyu-websocket-connect-1] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is successful.....
shenyu-bootstrap    | 2022-04-06 09:49:08 [shenyu-websocket-connect-1] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - websocket connection server[ws://admin:9095/websocket] is successful.....
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"PLUGIN","eventType":"MYSELF","data":[{"id":"1","name":"sign","role":"Authentication","enabled":false},{"id":"10","name":"sentinel","role":"FaultTolerance","enabled":false},{"id":"11","name":"sofa","config":"{\"protocol\":\"zookeeper\",\"register\":\"127.0.0.1:2181\"}","role":"Proxy","enabled":false},{"id":"12","name":"resilience4j","role":"FaultTolerance","enabled":false},{"id":"13","name":"tars","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":false},{"id":"14","name":"contextPath","role":"HttpProcess","enabled":true},{"id":"15","name":"grpc","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":false},{"id":"16","name":"redirect","role":"HttpProcess","enabled":false},{"id":"17","name":"motan","config":"{\"register\":\"127.0.0.1:2181\"}","role":"Proxy","enabled":false},{"id":"18","name":"logging","role":"Logging","enabled":false},{"id":"19","name":"jwt","config":"{\"secretKey\":\"key\"}","role":"Authentication","enabled":false},{"id":"2","name":"waf","config":"{\"model\":\"black\"}","role":"Authentication","enabled":false},{"id":"20","name":"request","role":"HttpProcess","enabled":false},{"id":"21","name":"oauth2","role":"Authentication","enabled":false},{"id":"22","name":"paramMapping","config":"{\"ruleHandlePageType\":\"custom\"}","role":"HttpProcess","enabled":false},{"id":"23","name":"modifyResponse","config":"{\"ruleHandlePageType\":\"custom\"}","role":"HttpProcess","enabled":false},{"id":"24","name":"cryptorRequest","role":"Cryptor","enabled":true},{"id":"25","name":"cryptorResponse","role":"Cryptor","enabled":true},{"id":"26","name":"websocket","config":"{\"multiSelectorHandle\":\"1\"}","role":"Proxy","enabled":true},{"id":"27","name":"generalContext","role":"Common","enabled":true},{"id":"28","name":"mqtt","config":"{\"port\": 9500,\"bossGroupThreadCount\": 1,\"maxPayloadSize\": 65536,\"workerGroupThreadCount\": 12,\"userName\": \"shenyu\",\"password\": \"shenyu\",\"isEncryptPassword\": false,\"encryptMode\": \"\",\"leakDetectorLevel\": \"DISABLED\"}","role":"Proxy","enabled":false},{"id":"3","name":"rewrite","role":"HttpProcess","enabled":false},{"id":"4","name":"rateLimiter","config":"{\"master\":\"mymaster\",\"mode\":\"standalone\",\"url\":\"192.168.1.1:6379\",\"password\":\"abc\"}","role":"FaultTolerance","enabled":false},{"id":"5","name":"divide","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":true},{"id":"6","name":"dubbo","config":"{\"register\":\"zookeeper://localhost:2181\",\"multiSelectorHandle\":\"1\"}","role":"Proxy","enabled":false},{"id":"7","name":"monitor","config":"{\"metricsName\":\"prometheus\",\"host\":\"localhost\",\"port\":\"9190\",\"async\":\"true\"}","role":"Monitor","enabled":false},{"id":"8","name":"springCloud","role":"Proxy","enabled":false},{"id":"9","name":"hystrix","role":"FaultTolerance","enabled":false}]})
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"PLUGIN","eventType":"MYSELF","data":[{"id":"1","name":"sign","role":"Authentication","enabled":false},{"id":"10","name":"sentinel","role":"FaultTolerance","enabled":false},{"id":"11","name":"sofa","config":"{\"protocol\":\"zookeeper\",\"register\":\"127.0.0.1:2181\"}","role":"Proxy","enabled":false},{"id":"12","name":"resilience4j","role":"FaultTolerance","enabled":false},{"id":"13","name":"tars","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":false},{"id":"14","name":"contextPath","role":"HttpProcess","enabled":true},{"id":"15","name":"grpc","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":false},{"id":"16","name":"redirect","role":"HttpProcess","enabled":false},{"id":"17","name":"motan","config":"{\"register\":\"127.0.0.1:2181\"}","role":"Proxy","enabled":false},{"id":"18","name":"logging","role":"Logging","enabled":false},{"id":"19","name":"jwt","config":"{\"secretKey\":\"key\"}","role":"Authentication","enabled":false},{"id":"2","name":"waf","config":"{\"model\":\"black\"}","role":"Authentication","enabled":false},{"id":"20","name":"request","role":"HttpProcess","enabled":false},{"id":"21","name":"oauth2","role":"Authentication","enabled":false},{"id":"22","name":"paramMapping","config":"{\"ruleHandlePageType\":\"custom\"}","role":"HttpProcess","enabled":false},{"id":"23","name":"modifyResponse","config":"{\"ruleHandlePageType\":\"custom\"}","role":"HttpProcess","enabled":false},{"id":"24","name":"cryptorRequest","role":"Cryptor","enabled":true},{"id":"25","name":"cryptorResponse","role":"Cryptor","enabled":true},{"id":"26","name":"websocket","config":"{\"multiSelectorHandle\":\"1\"}","role":"Proxy","enabled":true},{"id":"27","name":"generalContext","role":"Common","enabled":true},{"id":"28","name":"mqtt","config":"{\"port\": 9500,\"bossGroupThreadCount\": 1,\"maxPayloadSize\": 65536,\"workerGroupThreadCount\": 12,\"userName\": \"shenyu\",\"password\": \"shenyu\",\"isEncryptPassword\": false,\"encryptMode\": \"\",\"leakDetectorLevel\": \"DISABLED\"}","role":"Proxy","enabled":false},{"id":"3","name":"rewrite","role":"HttpProcess","enabled":false},{"id":"4","name":"rateLimiter","config":"{\"master\":\"mymaster\",\"mode\":\"standalone\",\"url\":\"192.168.1.1:6379\",\"password\":\"abc\"}","role":"FaultTolerance","enabled":false},{"id":"5","name":"divide","config":"{\"multiSelectorHandle\":\"1\",\"multiRuleHandle\":\"0\"}","role":"Proxy","enabled":true},{"id":"6","name":"dubbo","config":"{\"register\":\"zookeeper://localhost:2181\",\"multiSelectorHandle\":\"1\"}","role":"Proxy","enabled":false},{"id":"7","name":"monitor","config":"{\"metricsName\":\"prometheus\",\"host\":\"localhost\",\"port\":\"9190\",\"async\":\"true\"}","role":"Monitor","enabled":false},{"id":"8","name":"springCloud","role":"Proxy","enabled":false},{"id":"9","name":"hystrix","role":"FaultTolerance","enabled":false}]})
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"MYSELF","data":[]})
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"MYSELF","data":[]})
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"MYSELF","data":[]})
shenyu-bootstrap    | 2022-04-06 09:49:09 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"MYSELF","data":[]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643751390752768","pluginId":"5","pluginName":"divide","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643751390752768","pluginId":"5","pluginName":"divide","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"UPDATE","data":[{"id":"1511643751894069248","name":"/api/infrastructure/**","pluginName":"divide","selectorId":"1511643751390752768","matchMode":0,"sort":1,"enabled":true,"loged":true,"handle":"{\"loadBalance\":\"random\",\"retry\":3,\"timeout\":3000,\"headerMaxSize\":10240,\"requestMaxSize\":102400}","conditionDataList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"UPDATE","data":[{"id":"1511643751894069248","name":"/api/infrastructure/**","pluginName":"divide","selectorId":"1511643751390752768","matchMode":0,"sort":1,"enabled":true,"loged":true,"handle":"{\"loadBalance\":\"random\",\"retry\":3,\"timeout\":3000,\"headerMaxSize\":10240,\"requestMaxSize\":102400}","conditionDataList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643751390752768","pluginId":"5","pluginName":"divide","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"handle":"[{\"weight\":50,\"warmup\":10,\"protocol\":\"http://\",\"upstreamHost\":\"localhost\",\"upstreamUrl\":\"192.168.0.200:3000\",\"status\":true,\"timestamp\":1649238930071}]","conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643751390752768","pluginId":"5","pluginName":"divide","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"handle":"[{\"weight\":50,\"warmup\":10,\"protocol\":\"http://\",\"upstreamHost\":\"localhost\",\"upstreamUrl\":\"192.168.0.200:3000\",\"status\":true,\"timestamp\":1649238930071}]","conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643752330276864","pluginId":"14","pluginName":"contextPath","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"SELECTOR","eventType":"UPDATE","data":[{"id":"1511643752330276864","pluginId":"14","pluginName":"contextPath","name":"/api/infrastructure","matchMode":0,"type":1,"sort":1,"enabled":true,"logged":true,"continued":true,"conditionList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"UPDATE","data":[{"id":"1511643752607100928","name":"/api/infrastructure","pluginName":"contextPath","selectorId":"1511643752330276864","matchMode":0,"sort":1,"enabled":true,"loged":true,"handle":"{\"contextPath\":\"/api/infrastructure\"}","conditionDataList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:30 [WebSocketConnectReadThread-40] INFO  org.apache.shenyu.plugin.sync.data.websocket.client.ShenyuWebsocketClient - handleResult({"groupType":"RULE","eventType":"UPDATE","data":[{"id":"1511643752607100928","name":"/api/infrastructure","pluginName":"contextPath","selectorId":"1511643752330276864","matchMode":0,"sort":1,"enabled":true,"loged":true,"handle":"{\"contextPath\":\"/api/infrastructure\"}","conditionDataList":[{"paramType":"uri","operator":"match","paramName":"/","paramValue":"/api/infrastructure/**"}]}]})
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath rule success match , rule name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath rule success match , rule name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide rule success match , rule name :/api/infrastructure/**
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide rule success match , rule name :/api/infrastructure/**
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.httpclient.WebClientPlugin - The request urlPath is http://192.168.0.200:3000/app, retryTimes is 3
shenyu-bootstrap    | 2022-04-06 09:55:58 [boundedElastic-1] INFO  org.apache.shenyu.plugin.httpclient.WebClientPlugin - The request urlPath is http://192.168.0.200:3000/app, retryTimes is 3
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath rule success match , rule name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - contextPath rule success match , rule name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide selector success match , selector name :/api/infrastructure
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide rule success match , rule name :/api/infrastructure/**
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.base.AbstractShenyuPlugin - divide rule success match , rule name :/api/infrastructure/**
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.httpclient.WebClientPlugin - The request urlPath is http://192.168.0.200:3000/app, retryTimes is 3
shenyu-bootstrap    | 2022-04-06 09:56:10 [boundedElastic-1] INFO  org.apache.shenyu.plugin.httpclient.WebClientPlugin - The request urlPath is http://192.168.0.200:3000/app, retryTimes is 3
shenyu-bootstrap    | #
shenyu-bootstrap    | # A fatal error has been detected by the Java Runtime Environment:
shenyu-bootstrap    | #
shenyu-bootstrap    | #  Internal Error (assembler_aarch64.hpp:1156), pid=33, tid=0x0000ffffad4a6aa0
shenyu-bootstrap    | #  guarantee(Rs != Rn && Rs != Rt) failed: unpredictable instruction
shenyu-bootstrap    | #
shenyu-bootstrap    | # JRE version: OpenJDK Runtime Environment (8.0_212-b04) (build 1.8.0_212-b04)
shenyu-bootstrap    | # Java VM: OpenJDK 64-Bit Server VM (25.212-b04 mixed mode linux-aarch64 compressed oops)
shenyu-bootstrap    | # Derivative: IcedTea 3.12.0
shenyu-bootstrap    | # Distribution: Custom build (Sat May  4 17:44:26 UTC 2019)
shenyu-bootstrap    | # Core dump written. Default location: /opt/shenyu-bootstrap/core or core.33
shenyu-bootstrap    | #
shenyu-bootstrap    | # An error report file with more information is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/hs_err_pid33.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # Compiler replay data is saved as:
shenyu-bootstrap    | # /opt/shenyu-bootstrap/replay_pid33.log
shenyu-bootstrap    | #
shenyu-bootstrap    | # If you would like to submit a bug report, please include
shenyu-bootstrap    | # instructions on how to reproduce the bug and visit:
shenyu-bootstrap    | #   https://icedtea.classpath.org/bugzilla
shenyu-bootstrap    | #

I found the same problem elsewhere, it looks like there was a bug in the OpenJDK that needs to be fixed by upgrading the Docker image.

myesn avatar Apr 06 '22 10:04 myesn

hi, @myesn I checked the link you provided and I think you are right. Maybe this problem can be solved by upgrading the openjdk version, can you help try it? I've been so busy with exams lately that I don't have time for this at the moment.

erdengk avatar Apr 07 '22 00:04 erdengk

Very understand that you are busy with exams, but can other project members help me look at this problem (database and shenyu services run on arm64 architecture)?

I tried it all day today, using the v2.4.2 tag and deploying it with Docker-Compose, but things didn't go well. I replaced the base Docker Image for shenyu-bootstrap and shenyu-admin with openjdk:8u322-jre, and there was another new problems:

  1. Because the db service image does not support arm64 architecture, I used biarms/mysql:5.7.30-linux-arm64v8 as a replacement, and it seems to work fine
  2. shenyu-admin service's spring.profiles.active=mysql environment variable configuration no longer works, I used SPRING_PROFILES_ACTIVE=mysql to replace it and it works
  3. The log of the shenyu-admin service has an error that the database cannot be connected: Communications link failure(The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server)

But when I use the source code of v2.4.2 tag to run locally, the above errors do not appear, so I want to debug by printing some logs in the source code, but I don't know how the release profile works. I modified the source code, but there is no newly added code in the tar.gz file of the final release. I tried my best. I have been doing this all day today. The Raspberry Pi executes mvn -Prelease, docker is very Slow, it takes more than ten minutes each time. I really want to introduce this gateway product in our company, but at present, in terms of deployment, the database, shenyu bootstrap and shenyu admin cannot run well on the arm64 architecture. I Hope you guys can help me with these issues, I'd be more than happy to assist you with testing!

Thanks!

myesn avatar Apr 07 '22 12:04 myesn

Can you provide the log of shenyu-admin?

JooKS-me avatar Apr 07 '22 14:04 JooKS-me

@JooKS-me Thank you very much for your reply, I have compiled the following information for your reference.

All of the following steps are performed on the Raspberry Pi:

1. Download and extract v2.4.2 Souce code(tar.gz) 2. Open and edit the contents of incubator-shenyu-2.4.2/shenyu-dist/shenyu-admin-dist/Dockerfile and incubator-shenyu-2.4.2/shenyu-dist/shenyu-bootstrap-dist/Dockerfile files:

changes
# 1. Replace `FROM openjdk:8-jre-alpine` with:
FROM openjdk:8u322-jre

# 2. Replace `apk --no-cache add procps` with:
RUN apt-get update && \
    apt-get install -y --no-install-recommends procps && \
    rm -rf /var/lib/apt/lists/*

3. Switch to the incubator-shenyu-2.4.2/shenyu-dist directory and execute the following command (Total time 10:51 min):

mvn clean install -Dmaven.javadoc.skip=true -B -Drat.skip=true -Djacoco.skip=true -DskipITs -DskipTests -Prelease,docker

Although the following warning appears during the build process, the final result is BUILD SUCCESS:

warning logs
[INFO] --- maven-assembly-plugin:3.0.0:single (admin-bin) @ shenyu-admin-dist ---
[INFO] Reading assembly descriptor: /home/ubuntu/shenyu/incubator-shenyu-2.4.2/shenyu-dist/shenyu-admin-dist/src/main/assembly/binary.xml
[WARNING] The assembly descriptor contains a filesystem-root relative reference, which is not cross platform compatible /
[WARNING] Cannot include project artifact: org.apache.shenyu:shenyu-admin-dist:pom:2.4.2; it doesn't have an associated file or directory.

[INFO] --- maven-assembly-plugin:3.0.0:single (bootstrap-bin) @ shenyu-bootstrap-dist ---
[INFO] Reading assembly descriptor: /home/ubuntu/shenyu/incubator-shenyu-2.4.2/shenyu-dist/shenyu-bootstrap-dist/src/main/assembly/binary.xml
[WARNING] The assembly descriptor contains a filesystem-root relative reference, which is not cross platform compatible /
[WARNING] Cannot include project artifact: org.apache.shenyu:shenyu-bootstrap-dist:pom:2.4.2; it doesn't have an associated file or directory.
docker images output
ubuntu@ubuntu:~/shenyu/docker/shenyu-v2.4.2$ docker images
REPOSITORY                TAG         IMAGE ID       CREATED          SIZE
apache/shenyu-bootstrap   2.4.2       c2ed2d3e9c8e   28 minutes ago   557MB
apache/shenyu-bootstrap   latest      c2ed2d3e9c8e   28 minutes ago   557MB
apache/shenyu-admin       2.4.2       260bf5284967   34 minutes ago   426MB
apache/shenyu-admin       latest      260bf5284967   34 minutes ago   426MB
openjdk                   8u322-jre   285c82c72a84   8 days ago       265MB
portainer/portainer-ce    2.11.1      8000bafa387b   8 weeks ago      267MB
mariadb                   10.2.41     9af1a2a8b723   2 months ago     325MB
```	
</details>

**4.** Execute the following command to download the `v2.4.2 install.sh` file (auto-execute), the script will create a `shenyu-v2.4.2` directory, since the database does not support `arm64` architecture, this script will terminate when it outputs `Pulling db(docker.io/mysql:5.7)`:

```bash
curl https://raw.githubusercontent.com/apache/incubator-shenyu/v2.4.2/shenyu-dist/shenyu-docker-compose-dist/src/main/resources/install.sh | bash -s v2.4.2 mysql

5. Open the shenyu-v2.4.2/docker-compose.yaml file and modify the following:

changes
1. Replace the `v2.4.2` tag character in the `image` value in the `shenyu-bootstrap` service with `2.4.2`
2. Replace the `v2.4.2` tag character in the `image` value in the `shenyu-admin` service with `2.4.2`
3. Add a new environment variable `shenyu.register.props.checked=false` to the `environment` of the `shenyu-admin` service
4. Replace the `image` value in the `db` service with `mariadb:10.2.41` ([[type: refactor] Change mysql image to mariadb in docker-compose yaml](https://github.com/apache/incubator-shenyu/pull/3210))
docker-compose.yaml
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

version: "2.1"
services:
  shenyu-bootstrap:
    image: apache/shenyu-bootstrap:2.4.2
    container_name: shenyu-bootstrap
    ports:
      - "9195:9195"
    volumes:
      - ./shenyu-bootstrap/logs/:/opt/shenyu-bootstrap/logs
      - ./shenyu-bootstrap/conf/:/opt/shenyu-bootstrap/conf
    links:
      - shenyu-admin:admin
    depends_on:
      - shenyu-admin
    environment:
      - shenyu.sync.websocket.urls=ws://admin:9095/websocket
  shenyu-admin:
    image: apache/shenyu-admin:2.4.2
    container_name: shenyu-admin
    environment:
      - spring.profiles.active=mysql
      - spring.datasource.url=jdbc:mysql://db:3306/shenyu?useUnicode=true&characterEncoding=utf-8&useSSL=false
      - spring.datasource.username=root
      - spring.datasource.password=xyzj1a2y3
      - shenyu.register.props.checked=false
    volumes:
      - ./shenyu-admin/logs/:/opt/shenyu-admin/logs
      - ./shenyu-admin/conf/:/opt/shenyu-admin/conf
      - ./shenyu-admin/ext-lib/:/opt/shenyu-admin/ext-lib
    ports:
      - "9095:9095"
    links:
      - db:db
    depends_on:
      db:
        condition: service_healthy
  db:
    image: mariadb:10.2.41
    container_name: db
    environment:
      MYSQL_ROOT_PASSWORD: xyzj1a2y3
      MYSQL_DATABASE: shenyu
    ports:
      - 3310:3306
    healthcheck:
      test: [ "CMD", "mysqladmin", "ping", "-h", "localhost", "-uroot", "-pxyzj1a2y3" ]
      interval: 6s
      timeout: 5s
      retries: 10
```	
</details>

**6.** Execute `docker-compose up -d` command to start the service collection, all `3` services are created and started successfully, then execute `docker-compose logs -f shenyu-admin` to view the logs:

[shenyu-admin logs](https://gist.github.com/myesn/f7cb2f2a73376325ac47fc0db268dd98)

From the logs, we can see that the `shenyu-admin` program is using the `h2` profile, but the `environment` variable configured in `docker-compose.yaml` is `mysql`.

So I went inside the `shenyu-admin` container to check the environment variables and found no problems:

<details>
	<summary>shenyu-admin environment variables inside the container</summary>

ubuntu@ubuntu:~/shenyu/docker/shenyu-v2.4.2$ docker-compose exec shenyu-admin bash root@e289bd63ba2a:/opt/shenyu-admin# printenv shenyu.register.props.checked=false spring.profiles.active=mysql spring.datasource.username=root spring.datasource.url=jdbc:mysql://db:3306/shenyu?useUnicode=true&characterEncoding=utf-8&useSSL=false spring.datasource.password=xyzj1a2y3 HOSTNAME=e289bd63ba2a JAVA_HOME=/usr/local/openjdk-8 PWD=/opt/shenyu-admin LOCAL_PATH=/opt/shenyu-admin HOME=/root LANG=C.UTF-8 TERM=xterm SHLVL=1 PATH=/usr/local/openjdk-8/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin JAVA_VERSION=8u322 _=/usr/bin/printenv

</details>

**7.** So I opened the `docker-compose.yaml` file and replaced `spring.profiles.active=mysql` with `SPRING_PROFILES_ACTIVE=mysql` in the `environment` of the `shenyu-admin` service:

<details>
	<summary>docker-compose.yaml</summary>	

Licensed to the Apache Software Foundation (ASF) under one or more

contributor license agreements. See the NOTICE file distributed with

this work for additional information regarding copyright ownership.

The ASF licenses this file to You under the Apache License, Version 2.0

(the "License"); you may not use this file except in compliance with

the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

version: "2.1" services: shenyu-bootstrap: image: apache/shenyu-bootstrap:2.4.2 container_name: shenyu-bootstrap ports: - "9195:9195" volumes: - ./shenyu-bootstrap/logs/:/opt/shenyu-bootstrap/logs - ./shenyu-bootstrap/conf/:/opt/shenyu-bootstrap/conf links: - shenyu-admin:admin depends_on: - shenyu-admin environment: - shenyu.sync.websocket.urls=ws://admin:9095/websocket shenyu-admin: image: apache/shenyu-admin:2.4.2 container_name: shenyu-admin environment: - SPRING_PROFILES_ACTIVE=mysql - spring.datasource.url=jdbc:mysql://db:3306/shenyu?useUnicode=true&characterEncoding=utf-8&useSSL=false - spring.datasource.username=root - spring.datasource.password=xyzj1a2y3 - shenyu.register.props.checked=false volumes: - ./shenyu-admin/logs/:/opt/shenyu-admin/logs - ./shenyu-admin/conf/:/opt/shenyu-admin/conf - ./shenyu-admin/ext-lib/:/opt/shenyu-admin/ext-lib ports: - "9095:9095" links: - db:db depends_on: db: condition: service_healthy db: image: mariadb:10.2.41 container_name: db environment: MYSQL_ROOT_PASSWORD: xyzj1a2y3 MYSQL_DATABASE: shenyu ports: - 3310:3306 healthcheck: test: [ "CMD", "mysqladmin", "ping", "-h", "localhost", "-uroot", "-pxyzj1a2y3" ] interval: 6s timeout: 5s retries: 10

</details>

**8.** Execute `docker-compose down -v` (for a clearer view of the logs), then execute `docker-compose up -d` again, wait for a successful start and then execute `docker-compose logs -f shenyu-admin` to view the logs:

[shenyu-admin logs](https://gist.github.com/myesn/9514ab10066955615dde424d1c7a145d)

From the output log, we can see that `active profile` is already correctly configured for `mysql`, but there is a `Communications link failure` error, which causes the program to run abnormally.

That's all the steps and the process.

myesn avatar Apr 08 '22 03:04 myesn

  1. Execute the following command to download the v2.4.2 install.sh file (auto-execute), the script will create a shenyu-v2.4.2 directory, since the database does not support arm64 architecture, this script will terminate when it outputs Pulling db(docker.io/mysql:5.7):

@myesn After executing this command, what does the file directory look like (for example, you can check it with the tree command)? Did something else go wrong while executing the script?

JooKS-me avatar Apr 08 '22 03:04 JooKS-me

@JooKS-me Please check the following content:

And I noticed an unexpected file docker-compose.yamlr, but I looked at the contents of the install.sh file and there was nothing relevant.

ubuntu@ubuntu:~/shenyu/docker$ ls
ubuntu@ubuntu:~/shenyu/docker$ curl https://raw.githubusercontent.com/apache/incubator-shenyu/v2.4.2/shenyu-dist/shenyu-docker-compose-dist/src/main/resources/install.sh | bash -s v2.4.2 mysql
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2229  100  2229    0     0     67      0  0:00:33  0:00:33 --:--:--   564
current version: v2.4.2
current storage: mysql
download docker-compose configuration
download mysql-connector.jar
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2275k  100 2275k    0     0  1010k      0  0:00:02  0:00:02 --:--:-- 1010k
download shenyu-admin of configuration
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  1102  100  1102    0     0    640      0  0:00:01  0:00:01 --:--:--   639
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4585  100  4585    0     0   9188      0 --:--:-- --:--:-- --:--:--  9188
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2788  100  2788    0     0   5632      0 --:--:-- --:--:-- --:--:--  5620
download shenyu-bootstrap of configuration
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    14  100    14    0     0      6      0  0:00:02  0:00:02 --:--:--     6
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4589  100  4589    0     0  11443      0 --:--:-- --:--:-- --:--:-- 11443
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  4361  100  4361    0     0  11012      0 --:--:-- --:--:-- --:--:-- 10984
Creating network "shenyu-v242_default" with the default driver
Pulling db (docker.io/mysql:5.7)...
5.7: Pulling from library/mysql
ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries
ubuntu@ubuntu:~/shenyu/docker$ tree
.
└── shenyu-v2.4.2
    β”œβ”€β”€ docker-compose.yaml
    β”œβ”€β”€ docker-compose.yamlr
    β”œβ”€β”€ shenyu-admin
    β”‚Β Β  β”œβ”€β”€ conf
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ application-mysql.yml
    β”‚Β Β  β”‚Β Β  β”œβ”€β”€ application.yml
    β”‚Β Β  β”‚Β Β  └── logback.xml
    β”‚Β Β  β”œβ”€β”€ ext-lib
    β”‚Β Β  β”‚Β Β  └── mysql-connector.jar
    β”‚Β Β  └── logs
    └── shenyu-bootstrap
        β”œβ”€β”€ conf
        β”‚Β Β  β”œβ”€β”€ application-local.yml
        β”‚Β Β  β”œβ”€β”€ application.yml
        β”‚Β Β  └── logback.xml
        └── logs

8 directories, 9 files

myesn avatar Apr 08 '22 04:04 myesn

Hi @myesn , I reproduced your problem locally :)

I find that the base image you used openjdk:8u322-jre will make the env of spring invalid.

There may be no problem in the dockerfile, and it is recommended not to modify it. I read the log of your shenyu-bootstrap, that is probably because shenyu-admin failed to start successfully, not because of the image problem of openjdk.

JooKS-me avatar Apr 08 '22 05:04 JooKS-me