Console Output
+ set -e
+ mkdir -p /zoumh/java/zmh/backend/packages /zoumh/java/zmh/backend/logs /zoumh/java/zmh/backend/bin /zoumh/java/zmh/backend/docs /zoumh/java/zmh/backend/nginx
+ cp -f ruoyi-gateway/target/ruoyi-gateway.jar /zoumh/java/zmh/backend/packages/
+ cp -f ruoyi-auth/target/ruoyi-auth.jar /zoumh/java/zmh/backend/packages/
+ cp -f ruoyi-modules/ruoyi-system/target/ruoyi-modules-system.jar /zoumh/java/zmh/backend/packages/
+ cp -f ruoyi-modules/ruoyi-file/target/ruoyi-modules-file.jar /zoumh/java/zmh/backend/packages/
+ printf %s IyEvdXNyL2Jpbi9lbnYgYmFzaApzZXQgLWV1byBwaXBlZmFpbAoKUEFDS0FHRV9ESVI9IiR7UEFDS0FHRV9ESVI6LS96b3VtaC9qYXZhL3ptaC9iYWNrZW5kL3BhY2thZ2VzfSIKTE9HX0RJUj0iJHtMT0dfRElSOi0vem91bWgvamF2YS96bWgvYmFja2VuZC9sb2dzfSIKSkFWQV9JTUFHRT0iJHtKQVZBX0lNQUdFOi1lY2xpcHNlLXRlbXVyaW46MjEtanJlfSIKTkFDT1NfQUREUj0iJHtOQUNPU19BRERSOi0xNTYuMjI1LjI4LjExMDo4ODQ4fSIKTkFDT1NfVVNFUk5BTUU9IiR7TkFDT1NfVVNFUk5BTUU6LW5hY29zfSIKTkFDT1NfUEFTU1dPUkQ9IiR7TkFDT1NfUEFTU1dPUkQ6LXpvdW1ofSIKUkVESVNfSE9TVD0iJHtSRURJU19IT1NUOi0xNzIuMjEuMC4xfSIKUkVESVNfUE9SVD0iJHtSRURJU19QT1JUOi02Mzc5fSIKUkVESVNfUEFTU1dPUkQ9IiR7UkVESVNfUEFTU1dPUkQ6LXpvdW1ofSIKUkVESVNfREFUQUJBU0U9IiR7UkVESVNfREFUQUJBU0U6LTB9IgpUWl9OQU1FPSIke1RaX05BTUU6LUFzaWEvU2hhbmdoYWl9IgpKQVZBX1RNUERJUj0iJHtKQVZBX1RNUERJUjotL3RtcC96b3VtaC1qYXZhfSIKREVGQVVMVF9KQVZBX09QVFM9IiR7REVGQVVMVF9KQVZBX09QVFM6LS1EZmlsZS5lbmNvZGluZz1VVEYtOCAtRGphdmEuc2VjdXJpdHkuZWdkPWZpbGU6L2Rldi8uL3VyYW5kb20gLURqYXZhLmlvLnRtcGRpcj0vdG1wL3pvdW1oLWphdmEgLVhYOitVc2VHMUdDIC1YWDorVXNlU3RyaW5nRGVkdXBsaWNhdGlvbiAtWFg6K0V4aXRPbk91dE9mTWVtb3J5RXJyb3IgLVhYOk1heE1ldGFzcGFjZVNpemU9MTI4bSAtWFg6UmVzZXJ2ZWRDb2RlQ2FjaGVTaXplPTY0bSAtWFg6TWF4RGlyZWN0TWVtb3J5U2l6ZT04MG19IgpKQVZBX09QVFNfQVVUSD0iJHtKQVZBX09QVFNfQVVUSDotLVhtczEyOG0gLVhteDMyMG19IgpKQVZBX09QVFNfU1lTVEVNPSIke0pBVkFfT1BUU19TWVNURU06LS1YbXM5Nm0gLVhteDMyMG19IgpKQVZBX09QVFNfRklMRT0iJHtKQVZBX09QVFNfRklMRTotLVhtczY0bSAtWG14MTYwbX0iCkpBVkFfT1BUU19HQVRFV0FZPSIke0pBVkFfT1BUU19HQVRFV0FZOi0tWG1zOTZtIC1YbXgzMjBtIC1YWDpNYXhEaXJlY3RNZW1vcnlTaXplPTEyOG19IgpET0NLRVJfTUVNT1JZX0FVVEg9IiR7RE9DS0VSX01FTU9SWV9BVVRIOi01MTJtfSIKRE9DS0VSX01FTU9SWV9TWVNURU09IiR7RE9DS0VSX01FTU9SWV9TWVNURU06LTUxMm19IgpET0NLRVJfTUVNT1JZX0ZJTEU9IiR7RE9DS0VSX01FTU9SWV9GSUxFOi0yODhtfSIKRE9DS0VSX01FTU9SWV9HQVRFV0FZPSIke0RPQ0tFUl9NRU1PUllfR0FURVdBWTotNTEybX0iCkRPQ0tFUl9NRU1PUllfUkVTRVJWQVRJT05fQVVUSD0iJHtET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX0FVVEg6LTI1Nm19IgpET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX1NZU1RFTT0iJHtET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX1NZU1RFTTotMjI0bX0iCkRPQ0tFUl9NRU1PUllfUkVTRVJWQVRJT05fRklMRT0iJHtET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX0ZJTEU6LTEyOG19IgpET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX0dBVEVXQVk9IiR7RE9DS0VSX01FTU9SWV9SRVNFUlZBVElPTl9HQVRFV0FZOi0yMjRtfSIKRE9DS0VSX1BJRFNfTElNSVQ9IiR7RE9DS0VSX1BJRFNfTElNSVQ6LTI1Nn0iCk1JTklPX0lNQUdFPSIke01JTklPX0lNQUdFOi1taW5pby9taW5pbzpsYXRlc3R9IgpNSU5JT19DT05UQUlORVJfTkFNRT0iJHtNSU5JT19DT05UQUlORVJfTkFNRTotbWluaW99IgpNSU5JT19ST09UX1VTRVI9IiR7TUlOSU9fUk9PVF9VU0VSOi1taW5pb30iCk1JTklPX1JPT1RfUEFTU1dPUkQ9IiR7TUlOSU9fUk9PVF9QQVNTV09SRDotem1oMDAxMjA3ODA3MH0iCk1JTklPX0RBVEFfRElSPSIke01JTklPX0RBVEFfRElSOi0vem91bWgvZGF0YS9taW5pb30iCk1JTklPX0NPTlNPTEVfUE9SVD0iJHtNSU5JT19DT05TT0xFX1BPUlQ6LTkwMDF9IgpNSU5JT19BUElfUE9SVD0iJHtNSU5JT19BUElfUE9SVDotOTAwMH0iCk1JTklPX05FVFdPUks9IiR7TUlOSU9fTkVUV09SSzotZG9ja2VyLWNvbXBvc2VfYmFja2VuZH0iClBVQkxJQ19OR0lOWF9DT05GX1NPVVJDRT0iJHtQVUJMSUNfTkdJTlhfQ09ORl9TT1VSQ0U6LS96b3VtaC9qYXZhL3ptaC9iYWNrZW5kL25naW54L25naW54LmNvbmZ9IgpQVUJMSUNfTkdJTlhfQ09ORl9UQVJHRVQ9IiR7UFVCTElDX05HSU5YX0NPTkZfVEFSR0VULS96b3VtaC9kYXRhL25naW54L2NvbmYvbmdpbnguY29uZn0iCgpta2RpciAtcCAiJHtQQUNLQUdFX0RJUn0iICIke0xPR19ESVJ9IgoKZW5zdXJlX2RvY2tlcl9zaGVsbF9lbnYoKSB7CiAgbG9jYWwgZG9ja2VyX2NtZCBkb2NrZXJfYmluIGRvY2tlcl9kaXIgZW52X2ZpbGUgaGVscGVyX2ZpbGUgYmFzaHJjX3NuaXBwZXQKICBkb2NrZXJfY21kPSIkKGNvbW1hbmQgLXYgZG9ja2VyIHx8IHRydWUpIgogIGlmIFtbIC16ICIke2RvY2tlcl9jbWR9IiBdXTsgdGhlbgogICAgZWNobyAiZG9ja2VyIGNvbW1hbmQgbm90IGZvdW5kIGluIGRlcGxveSBlbnZpcm9ubWVudCIgPiYyCiAgICBleGl0IDEKICBmaQoKICBkb2NrZXJfYmluPSIkKHJlYWRsaW5rIC1mICIke2RvY2tlcl9jbWR9IiAyPi9kZXYvbnVsbCB8fCB0cnVlKSIKICBpZiBbWyAteiAiJHtkb2NrZXJfYmlufSIgfHwgISAteCAiJHtkb2NrZXJfYmlufSIgXV07IHRoZW4KICAgIGlmIFtbIC14IC91c3IvYmluL2RvY2tlciBdXTsgdGhlbgogICAgICBkb2NrZXJfYmluPSIvdXNyL2Jpbi9kb2NrZXIiCiAgICBlbHNlCiAgICAgIGRvY2tlcl9iaW49IiR7ZG9ja2VyX2NtZH0iCiAgICBmaQogIGZpCgogIGRvY2tlcl9kaXI9IiQoZGlybmFtZSAiJHtkb2NrZXJfYmlufSIpIgogIGVudl9maWxlPSIvZXRjL3Byb2ZpbGUuZC96b3VtaC1kb2NrZXIuc2giCiAgaGVscGVyX2ZpbGU9Ii96b3VtaC9zaC9kb2NrZXIuc2giCiAgYmFzaHJjX3NuaXBwZXQ9IiMgPj4+IHpvdW1oIGRvY2tlciBlbnYgPj4+IgoKICBta2RpciAtcCAvZXRjL3Byb2ZpbGUuZCAvem91bWgvc2gKICBpZiBbWyAtTCAvdXNyL2xvY2FsL2Jpbi9kb2NrZXIgJiYgISAtZSAvdXNyL2xvY2FsL2Jpbi9kb2NrZXIgXV07IHRoZW4KICAgIHJtIC1mIC91c3IvbG9jYWwvYmluL2RvY2tlcgogIGZpCiAgbG4gLXNmICIke2RvY2tlcl9iaW59IiAvdXNyL2xvY2FsL2Jpbi9kb2NrZXIgfHwgdHJ1ZQogIGxuIC1zZiAiJHtkb2NrZXJfYmlufSIgL3Vzci9iaW4vZG9ja2VyIHx8IHRydWUKCiAgY2xlYW5fc2hlbGxfaG9vaygpIHsKICAgIGxvY2FsIHNoZWxsX2ZpbGU9IiQxIgogICAgbG9jYWwgdGVtcF9maWxlCiAgICBbWyAtZiAiJHtzaGVsbF9maWxlfSIgXV0gfHwgdG91Y2ggIiR7c2hlbGxfZmlsZX0iCiAgICB0ZW1wX2ZpbGU9IiQobWt0ZW1wKSIKICAgIGF3ayAnCiAgICAgIEJFR0lOIHsKICAgICAgICBza2lwX2Jsb2NrID0gMAogICAgICAgIHNraXBfbGVnYWN5X2ZpID0gMAogICAgICB9CiAgICAgIC9eIyA+Pj4gem91bWggZG9ja2VyIGVudiA+Pj4kLyB7CiAgICAgICAgc2tpcF9ibG9jayA9IDEKICAgICAgICBuZXh0CiAgICAgIH0KICAgICAgL14jIDw8PCB6b3VtaCBkb2NrZXIgZW52IDw8PC8gewogICAgICAgIHNraXBfYmxvY2sgPSAwCiAgICAgICAgbmV4dAogICAgICB9CiAgICAgIHNraXBfYmxvY2sgewogICAgICAgIG5leHQKICAgICAgfQogICAgICBza2lwX2xlZ2FjeV9maSAmJiAvXmZpJC8gewogICAgICAgIHNraXBfbGVnYWN5X2ZpID0gMAogICAgICAgIG5leHQKICAgICAgfQogICAgICAvXiMgem91bWggZG9ja2VyIGVudiQvIHsKICAgICAgICBza2lwX2xlZ2FjeV9maSA9IDEKICAgICAgICBuZXh0CiAgICAgIH0KICAgICAgL1wvZXRjXC9wcm9maWxlXC5kXC96b3VtaC1kb2NrZXJcLnNoLyB7CiAgICAgICAgbmV4dAogICAgICB9CiAgICAgIC9cL3pvdW1oXC9zaFwvZG9ja2VyXC5zaC8gewogICAgICAgIG5leHQKICAgICAgfQogICAgICB7CiAgICAgICAgc2tpcF9sZWdhY3lfZmkgPSAwCiAgICAgICAgcHJpbnQKICAgICAgfQogICAgJyAiJHtzaGVsbF9maWxlfSIgPiAiJHt0ZW1wX2ZpbGV9IgogICAgY2F0ICIke3RlbXBfZmlsZX0iID4gIiR7c2hlbGxfZmlsZX0iCiAgICBybSAtZiAiJHt0ZW1wX2ZpbGV9IgogIH0KCiAgY2F0ID4gIiR7ZW52X2ZpbGV9IiA8PEVPRgpleHBvcnQgRE9DS0VSX0hPTUU9JyR7ZG9ja2VyX2Rpcn0nCmNhc2UgIjpcJFBBVEg6IiBpbgogICo6IiR7ZG9ja2VyX2Rpcn0iOiopIDs7CiAgKikgZXhwb3J0IFBBVEg9IiR7ZG9ja2VyX2Rpcn06XCRQQVRIIiA7Owplc2FjCkVPRgogIGNobW9kIDY0NCAiJHtlbnZfZmlsZX0iCgogIGNsZWFuX3NoZWxsX2hvb2sgL2V0Yy9iYXNocmMKICBjYXQgPj4gL2V0Yy9iYXNocmMgPDxFT0YKCiR7YmFzaHJjX3NuaXBwZXR9CmlmIFsgLWYgL2V0Yy9wcm9maWxlLmQvem91bWgtZG9ja2VyLnNoIF07IHRoZW4KICAuIC9ldGMvcHJvZmlsZS5kL3pvdW1oLWRvY2tlci5zaApmaQojIDw8PCB6b3VtaCBkb2NrZXIgZW52IDw8PApFT0YKCiAgbWtkaXIgLXAgL3Jvb3QKICBmb3Igc2hlbGxfZmlsZSBpbiAvcm9vdC8uYmFzaHJjIC9yb290Ly5iYXNoX3Byb2ZpbGU7IGRvCiAgICBjbGVhbl9zaGVsbF9ob29rICIke3NoZWxsX2ZpbGV9IgogICAgY2F0ID4+ICIke3NoZWxsX2ZpbGV9IiA8PEVPRgoKJHtiYXNocmNfc25pcHBldH0KaWYgWyAtZiAvZXRjL3Byb2ZpbGUuZC96b3VtaC1kb2NrZXIuc2ggXTsgdGhlbgogIC4gL2V0Yy9wcm9maWxlLmQvem91bWgtZG9ja2VyLnNoCmZpCiMgPDw8IHpvdW1oIGRvY2tlciBlbnYgPDw8CkVPRgogIGRvbmUKCiAgY2F0ID4gIiR7aGVscGVyX2ZpbGV9IiA8PEVPRgojIS91c3IvYmluL2VudiBiYXNoCnNldCAtZQpleHBvcnQgRE9DS0VSX0hPTUU9JyR7ZG9ja2VyX2Rpcn0nCmNhc2UgIjpcJFBBVEg6IiBpbgogICo6IiR7ZG9ja2VyX2Rpcn0iOiopIDs7CiAgKikgZXhwb3J0IFBBVEg9IiR7ZG9ja2VyX2Rpcn06XCRQQVRIIiA7Owplc2FjCgppZiBbWyBcJCMgLWVxIDAgXV07IHRoZW4KICBleGVjICIke2RvY2tlcl9iaW59IiAtLXZlcnNpb24KZmkKCmV4ZWMgIiR7ZG9ja2VyX2Jpbn0iICJcJEAiCkVPRgogIGNobW9kICt4ICIke2hlbHBlcl9maWxlfSIKfQoKZW5zdXJlX2RvY2tlcl9zaGVsbF9lbnYKCmNsZWFudXBfcmVtb3ZlZF9tb2R1bGVfbWVudV9kYXRhKCkgewogIGxvY2FsIHNxbAogIHNxbD0iJChjYXQgPDwnRU9GJwpERUxFVEUgcm0KRlJPTSBzeXNfcm9sZV9tZW51IHJtCklOTkVSIEpPSU4gc3lzX21lbnUgbSBPTiBtLm1lbnVfaWQgPSBybS5tZW51X2lkCldIRVJFIG0ucGVybXMgTElLRSAnaG90ZWw6bW9uaXRvcjolJwogICBPUiBtLnBhdGggPSAnaG90ZWwnCiAgIE9SIG0ucGF0aCA9ICdtb25pdG9yJwogICBPUiBtLmNvbXBvbmVudCA9ICdob3RlbC9tb25pdG9yL2luZGV4JwogICBPUiBtLnJvdXRlX25hbWUgSU4gKCdIb3RlbCcsICdIb3RlbE1vbml0b3InKTsKCkRFTEVURSBGUk9NIHN5c19tZW51CldIRVJFIHBlcm1zIExJS0UgJ2hvdGVsOm1vbml0b3I6JScKICAgT1IgcGF0aCA9ICdob3RlbCcKICAgT1IgcGF0aCA9ICdtb25pdG9yJwogICBPUiBjb21wb25lbnQgPSAnaG90ZWwvbW9uaXRvci9pbmRleCcKICAgT1Igcm91dGVfbmFtZSBJTiAoJ0hvdGVsJywgJ0hvdGVsTW9uaXRvcicpOwpFT0YKKSIKCiAgaWYgZG9ja2VyIHBzIC0tZm9ybWF0ICd7ey5OYW1lc319JyB8IGdyZXAgLXF4ICdteXNxbDgnOyB0aGVuCiAgICBkb2NrZXIgZXhlYyAtaSBteXNxbDggbXlzcWwgLXVyb290IC1wem91bWggem91bWggLWUgIiR7c3FsfSIgPi9kZXYvbnVsbAogICAgZWNobyAicmVtb3ZlZCBzdGFsZSB6b3VtaC1ob3RlbC1tb25pdG9yIG1lbnUgZGF0YSIKICBlbHNlCiAgICBlY2hvICJza2lwIG1lbnUgY2xlYW51cDogbXlzcWw4IGNvbnRhaW5lciBub3QgcnVubmluZyIKICBmaQp9CgplbnN1cmVfbWluaW8oKSB7CiAgbWtkaXIgLXAgIiR7TUlOSU9fREFUQV9ESVJ9IgogIGRvY2tlciBybSAtZiAiJHtNSU5JT19DT05UQUlORVJfTkFNRX0iID4vZGV2L251bGwgMj4mMSB8fCB0cnVlCiAgZG9ja2VyIHJ1biAtZCBcCiAgICAtLW5hbWUgIiR7TUlOSU9fQ09OVEFJTkVSX05BTUV9IiBcCiAgICAtLXJlc3RhcnQgdW5sZXNzLXN0b3BwZWQgXAogICAgLS1uZXR3b3JrICIke01JTklPX05FVFdPUkt9IiBcCiAgICAtcCAiJHtNSU5JT19BUElfUE9SVH06OTAwMCIgXAogICAgLXAgIiR7TUlOSU9fQ09OU09MRV9QT1JUfTo5MDAxIiBcCiAgICAtLW1lbW9yeT0iMzg0bSIgXAogICAgLS1tZW1vcnktcmVzZXJ2YXRpb249IjEyOG0iIFwKICAgIC0tcGlkcy1saW1pdD0iMTI4IiBcCiAgICAtLWxvZy1vcHQgbWF4LXNpemU9MjBtIFwKICAgIC0tbG9nLW9wdCBtYXgtZmlsZT0zIFwKICAgIC1lIFRaPSIke1RaX05BTUV9IiBcCiAgICAtZSBNSU5JT19ST09UX1VTRVI9IiR7TUlOSU9fUk9PVF9VU0VSfSIgXAogICAgLWUgTUlOSU9fUk9PVF9QQVNTV09SRD0iJHtNSU5JT19ST09UX1BBU1NXT1JEfSIgXAogICAgLXYgIiR7TUlOSU9fREFUQV9ESVJ9Oi9kYXRhIiBcCiAgICAiJHtNSU5JT19JTUFHRX0iIHNlcnZlciAvZGF0YSAtLWNvbnNvbGUtYWRkcmVzcyAiOjkwMDEiCiAgZWNobyAic3RhcnRlZCAke01JTklPX0NPTlRBSU5FUl9OQU1FfSIKfQoKc3luY19wdWJsaWNfbmdpbnhfY29uZigpIHsKICBpZiBbWyAhIC1mICIke1BVQkxJQ19OR0lOWF9DT05GX1NPVVJDRX0iIF1dOyB0aGVuCiAgICBlY2hvICJza2lwIHB1YmxpYyBuZ2lueCBzeW5jOiBzb3VyY2Ugbm90IGZvdW5kICR7UFVCTElDX05HSU5YX0NPTkZfU09VUkNFfSIKICAgIHJldHVybiAwCiAgZmkKCiAgaWYgW1sgLXogIiR7UFVCTElDX05HSU5YX0NPTkZfVEFSR0VUfSIgXV07IHRoZW4KICAgIGVjaG8gInNraXAgcHVibGljIG5naW54IHN5bmM6IHRhcmdldCBpcyBlbXB0eSIKICAgIHJldHVybiAwCiAgZmkKCiAgbWtkaXIgLXAgIiQoZGlybmFtZSAiJHtQVUJMSUNfTkdJTlhfQ09ORl9UQVJHRVR9IikiCgogIGxvY2FsIGJhY2t1cF9maWxlCiAgYmFja3VwX2ZpbGU9IiR7UFVCTElDX05HSU5YX0NPTkZfVEFSR0VUfS5iYWsuJChkYXRlICslWSVtJWQlSCVNJVMpIgogIGlmIFtbIC1mICIke1BVQkxJQ19OR0lOWF9DT05GX1RBUkdFVH0iIF1dOyB0aGVuCiAgICBjcCAtZiAiJHtQVUJMSUNfTkdJTlhfQ09ORl9UQVJHRVR9IiAiJHtiYWNrdXBfZmlsZX0iCiAgZmkKCiAgY3AgLWYgIiR7UFVCTElDX05HSU5YX0NPTkZfU09VUkNFfSIgIiR7UFVCTElDX05HSU5YX0NPTkZfVEFSR0VUfSIKCiAgaWYgZG9ja2VyIHBzIC0tZm9ybWF0ICd7ey5OYW1lc319JyB8IGdyZXAgLXF4ICduZ2lueCc7IHRoZW4KICAgIGlmIGRvY2tlciBleGVjIG5naW54IG5naW54IC10ID4vZGV2L251bGwgMj4mMTsgdGhlbgogICAgICBkb2NrZXIgZXhlYyBuZ2lueCBuZ2lueCAtcyByZWxvYWQgPi9kZXYvbnVsbCAyPiYxIHx8IGRvY2tlciByZXN0YXJ0IG5naW54ID4vZGV2L251bGwKICAgICAgZWNobyAicHVibGljIG5naW54IGNvbmZpZyBzeW5jZWQgYW5kIHJlbG9hZGVkIgogICAgZWxzZQogICAgICBlY2hvICJwdWJsaWMgbmdpbnggY29uZmlnIHRlc3QgZmFpbGVkLCByb2xsaW5nIGJhY2siID4mMgogICAgICBpZiBbWyAtZiAiJHtiYWNrdXBfZmlsZX0iIF1dOyB0aGVuCiAgICAgICAgY3AgLWYgIiR7YmFja3VwX2ZpbGV9IiAiJHtQVUJMSUNfTkdJTlhfQ09ORl9UQVJHRVR9IgogICAgICAgIGRvY2tlciBleGVjIG5naW54IG5naW54IC10ID4vZGV2L251bGwgMj4mMSAmJiBkb2NrZXIgZXhlYyBuZ2lueCBuZ2lueCAtcyByZWxvYWQgPi9kZXYvbnVsbCAyPiYxIHx8IGRvY2tlciByZXN0YXJ0IG5naW54ID4vZGV2L251bGwgMj4mMSB8fCB0cnVlCiAgICAgIGZpCiAgICAgIHJldHVybiAxCiAgICBmaQogIGVsc2UKICAgIGVjaG8gInB1YmxpYyBuZ2lueCBjb25maWcgc3luY2VkOyBuZ2lueCBjb250YWluZXIgbm90IHJ1bm5pbmcsIHNraXAgcmVsb2FkIgogIGZpCn0KCmRvY2tlciBybSAtZiAicnVveWktbW9uaXRvciIgPi9kZXYvbnVsbCAyPiYxIHx8IHRydWUKZG9ja2VyIHJtIC1mICJydW95aS1qb2IiID4vZGV2L251bGwgMj4mMSB8fCB0cnVlCmRvY2tlciBybSAtZiAicnVveWktZ2VuIiA+L2Rldi9udWxsIDI+JjEgfHwgdHJ1ZQpkb2NrZXIgcm0gLWYgInpvdW1oLXRvb2xzIiA+L2Rldi9udWxsIDI+JjEgfHwgdHJ1ZQpkb2NrZXIgcm0gLWYgInpvdW1oLWhvdGVsLW1vbml0b3IiID4vZGV2L251bGwgMj4mMSB8fCB0cnVlCmNsZWFudXBfcmVtb3ZlZF9tb2R1bGVfbWVudV9kYXRhCnN5bmNfcHVibGljX25naW54X2NvbmYKCnJ1bl9qYXZhX3NlcnZpY2UoKSB7CiAgbG9jYWwgbmFtZT0iJDEiCiAgbG9jYWwgamFyX25hbWU9IiQyIgogIGxvY2FsIGphdmFfb3B0cz0iJDMiCiAgbG9jYWwgZG9ja2VyX21lbW9yeT0iJDQiCiAgbG9jYWwgZG9ja2VyX21lbW9yeV9yZXNlcnZhdGlvbj0iJDUiCiAgc2hpZnQgNQoKICBpZiBbWyAhIC1mICIke1BBQ0tBR0VfRElSfS8ke2phcl9uYW1lfSIgXV07IHRoZW4KICAgIGVjaG8gInNraXAgJHtuYW1lfTogJHtqYXJfbmFtZX0gbm90IGZvdW5kIgogICAgcmV0dXJuIDAKICBmaQoKICBkb2NrZXIgcm0gLWYgIiR7bmFtZX0iID4vZGV2L251bGwgMj4mMSB8fCB0cnVlCgogIGRvY2tlciBydW4gLWQgXAogICAgLS1uYW1lICIke25hbWV9IiBcCiAgICAtLXJlc3RhcnQgdW5sZXNzLXN0b3BwZWQgXAogICAgLS1uZXR3b3JrIGhvc3QgXAogICAgLS1tZW1vcnk9IiR7ZG9ja2VyX21lbW9yeX0iIFwKICAgIC0tbWVtb3J5LXJlc2VydmF0aW9uPSIke2RvY2tlcl9tZW1vcnlfcmVzZXJ2YXRpb259IiBcCiAgICAtLXBpZHMtbGltaXQ9IiR7RE9DS0VSX1BJRFNfTElNSVR9IiBcCiAgICAtLWxvZy1vcHQgbWF4LXNpemU9MjBtIFwKICAgIC0tbG9nLW9wdCBtYXgtZmlsZT0zIFwKICAgIC1lIFRaPSIke1RaX05BTUV9IiBcCiAgICAtZSAiSkFWQV9PUFRTPSR7REVGQVVMVF9KQVZBX09QVFN9ICR7amF2YV9vcHRzfSIgXAogICAgIiRAIiBcCiAgICAtdiAiJHtQQUNLQUdFX0RJUn06L2FwcCIgXAogICAgLXYgIiR7TE9HX0RJUn06L2xvZ3MiIFwKICAgIC12ICIke0pBVkFfVE1QRElSfToke0pBVkFfVE1QRElSfSIgXAogICAgIiR7SkFWQV9JTUFHRX0iIFwKICAgIHNoIC1sYyAibWtkaXIgLXAgJyR7SkFWQV9UTVBESVJ9JyAmJiBleGVjIGphdmEgXCRKQVZBX09QVFMgLWphciAvYXBwLyR7amFyX25hbWV9ID4gL2xvZ3MvJHtuYW1lfS5sb2cgMj4mMSIKCiAgZWNobyAic3RhcnRlZCAke25hbWV9Igp9CgpydW5famF2YV9zZXJ2aWNlIFwKICAicnVveWktYXV0aCIgXAogICJydW95aS1hdXRoLmphciIgXAogICIke0pBVkFfT1BUU19BVVRIfSIgXAogICIke0RPQ0tFUl9NRU1PUllfQVVUSH0iIFwKICAiJHtET0NLRVJfTUVNT1JZX1JFU0VSVkFUSU9OX0FVVEh9IiBcCiAgLWUgIlNQUklOR19DTE9VRF9OQUNPU19TRVJWRVJfQUREUj0ke05BQ09TX0FERFJ9IiBcCiAgLWUgIlNQUklOR19DTE9VRF9OQUNPU19VU0VSTkFNRT0ke05BQ09TX1VTRVJOQU1FfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfUEFTU1dPUkQ9JHtOQUNPU19QQVNTV09SRH0iCgpydW5famF2YV9zZXJ2aWNlIFwKICAicnVveWktc3lzdGVtIiBcCiAgInJ1b3lpLW1vZHVsZXMtc3lzdGVtLmphciIgXAogICIke0pBVkFfT1BUU19TWVNURU19IiBcCiAgIiR7RE9DS0VSX01FTU9SWV9TWVNURU19IiBcCiAgIiR7RE9DS0VSX01FTU9SWV9SRVNFUlZBVElPTl9TWVNURU19IiBcCiAgLWUgIlNQUklOR19DTE9VRF9OQUNPU19TRVJWRVJfQUREUj0ke05BQ09TX0FERFJ9IiBcCiAgLWUgIlNQUklOR19DTE9VRF9OQUNPU19VU0VSTkFNRT0ke05BQ09TX1VTRVJOQU1FfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfUEFTU1dPUkQ9JHtOQUNPU19QQVNTV09SRH0iIFwKICAtZSAiU1BSSU5HX0NMT1VEX05BQ09TX0RJU0NPVkVSWV9TRVJWSUNFPXJ1b3lpLXN5c3RlbSIKCnJ1bl9qYXZhX3NlcnZpY2UgXAogICJydW95aS1maWxlIiBcCiAgInJ1b3lpLW1vZHVsZXMtZmlsZS5qYXIiIFwKICAiJHtKQVZBX09QVFNfRklMRX0iIFwKICAiJHtET0NLRVJfTUVNT1JZX0ZJTEV9IiBcCiAgIiR7RE9DS0VSX01FTU9SWV9SRVNFUlZBVElPTl9GSUxFfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfU0VSVkVSX0FERFI9JHtOQUNPU19BRERSfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfVVNFUk5BTUU9JHtOQUNPU19VU0VSTkFNRX0iIFwKICAtZSAiU1BSSU5HX0NMT1VEX05BQ09TX1BBU1NXT1JEPSR7TkFDT1NfUEFTU1dPUkR9IgoKcnVuX2phdmFfc2VydmljZSBcCiAgInJ1b3lpLWdhdGV3YXkiIFwKICAicnVveWktZ2F0ZXdheS5qYXIiIFwKICAiJHtKQVZBX09QVFNfR0FURVdBWX0iIFwKICAiJHtET0NLRVJfTUVNT1JZX0dBVEVXQVl9IiBcCiAgIiR7RE9DS0VSX01FTU9SWV9SRVNFUlZBVElPTl9HQVRFV0FZfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfU0VSVkVSX0FERFI9JHtOQUNPU19BRERSfSIgXAogIC1lICJTUFJJTkdfQ0xPVURfTkFDT1NfVVNFUk5BTUU9JHtOQUNPU19VU0VSTkFNRX0iIFwKICAtZSAiU1BSSU5HX0NMT1VEX05BQ09TX1BBU1NXT1JEPSR7TkFDT1NfUEFTU1dPUkR9IiBcCiAgLWUgIlNFQ1VSSVRZX0NBUFRDSEFfRU5BQkxFRD1mYWxzZSIgXAogIC1lICJTUFJJTkdfREFUQV9SRURJU19IT1NUPSR7UkVESVNfSE9TVH0iIFwKICAtZSAiU1BSSU5HX0RBVEFfUkVESVNfUE9SVD0ke1JFRElTX1BPUlR9IiBcCiAgLWUgIlNQUklOR19EQVRBX1JFRElTX1BBU1NXT1JEPSR7UkVESVNfUEFTU1dPUkR9IiBcCiAgLWUgIlNQUklOR19EQVRBX1JFRElTX0RBVEFCQVNFPSR7UkVESVNfREFUQUJBU0V9IgoKaWYgW1sgLW4gIiR7UE9TVF9ERVBMT1lfQ01EOi19IiBdXTsgdGhlbgogIHNoIC1sYyAiJHtQT1NUX0RFUExPWV9DTUR9IgpmaQoKZG9ja2VyIHJ1biAtLXJtICIke0pBVkFfSU1BR0V9IiBqYXZhIC12ZXJzaW9uIDI+JjEgfCBoZWFkIC1uIDEgfHwgdHJ1ZQoKbG9naW5fcHJvYmU9J3sidXNlcm5hbWUiOiJhZG1pbiIsInBhc3N3b3JkIjoiYWRtaW4xMjMifScKc2xlZXAgMjAKcHJvYmVfcmVzcG9uc2U9IiQoY3VybCAta3NTIC1IICdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL2pzb24nIC1kICIke2xvZ2luX3Byb2JlfSIgaHR0cHM6Ly96b3VtaC5jb20vcHJvZC1hcGkvYXV0aC9sb2dpbiB8fCB0cnVlKSIKZ2F0ZXdheV9wcm9iZT0iJChjdXJsIC1zUyAtSCAnQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9qc29uJyAtZCAiJHtsb2dpbl9wcm9iZX0iIGh0dHA6Ly8xMjcuMC4wLjE6ODA4MC9hdXRoL2xvZ2luIHx8IHRydWUpIgplY2hvICJsb2dpbl9wcm9iZV9yZXNwb25zZT0ke3Byb2JlX3Jlc3BvbnNlfSIKZWNobyAiZ2F0ZXdheV9wcm9iZV9yZXNwb25zZT0ke2dhdGV3YXlfcHJvYmV9IgppZiBwcmludGYgJyVzXG4lcycgIiR7cHJvYmVfcmVzcG9uc2V9IiAiJHtnYXRld2F5X3Byb2JlfSIgfCBncmVwIC1FcSAnImNvZGUiOjUwMHw1MDIgQmFkIEdhdGV3YXknOyB0aGVuCiAgZWNobyAiLS0tIGdhdGV3YXkubG9nIHRhaWwgLS0tIgogIHRhaWwgLW4gODAgIiR7TE9HX0RJUn0vcnVveWktZ2F0ZXdheS5sb2ciIDI+L2Rldi9udWxsIHx8IHRydWUKICBlY2hvICItLS0gYXV0aC5sb2cgdGFpbCAtLS0iCiAgdGFpbCAtbiA4MCAiJHtMT0dfRElSfS9ydW95aS1hdXRoLmxvZyIgMj4vZGV2L251bGwgfHwgdHJ1ZQogIGVjaG8gIi0tLSBzeXN0ZW0ubG9nIHRhaWwgLS0tIgogIHRhaWwgLW4gODAgIiR7TE9HX0RJUn0vcnVveWktc3lzdGVtLmxvZyIgMj4vZGV2L251bGwgfHwgdHJ1ZQpmaQoKZG9ja2VyIHN0YXRzIC0tbm8tc3RyZWFtIC0tZm9ybWF0ICd7ey5OYW1lfX1cdHt7Lk1lbVVzYWdlfX0nIHwgZ3JlcCAtRSAncnVveWktKGF1dGh8c3lzdGVtfGZpbGV8Z2F0ZXdheSknIHx8IHRydWUKZG9ja2VyIHBzIC0tZm9ybWF0ICd0YWJsZSB7ey5OYW1lc319XHR7ey5TdGF0dXN9fScgfCBncmVwIC1FICdydW95aS0oYXV0aHxzeXN0ZW18ZmlsZXxnYXRld2F5KScgfHwgdHJ1ZQplY2hvICItLS0gcnVveWktZmlsZS5sb2cgdGFpbCAtLS0iCnRhaWwgLW4gMTIwICIke0xPR19ESVJ9L3J1b3lpLWZpbGUubG9nIiAyPi9kZXYvbnVsbCB8fCB0cnVlCmVjaG8gIi0tLSByZXN0YXJ0aW5nIGNvbnRhaW5lcnMgLS0tIgpkb2NrZXIgcHMgLWEgLS1maWx0ZXIgc3RhdHVzPXJlc3RhcnRpbmcgLS1mb3JtYXQgJ3RhYmxlIHt7Lk5hbWVzfX1cdHt7LlN0YXR1c319JyB8fCB0cnVlCg==
+ base64 -d
+ cp -f docs/server-ops-guide.md /zoumh/java/zmh/backend/docs/server-ops-guide.md
+ cp -f docs/server-ops-guide.md /zoumh/java/zmh/README-ops.md
+ cp -f docker/nginx/conf/nginx.conf /zoumh/java/zmh/backend/nginx/nginx.conf
+ chmod +x /zoumh/java/zmh/backend/bin/deploy-backend-host.sh
+ PACKAGE_DIR=/zoumh/java/zmh/backend/packages LOG_DIR=/zoumh/java/zmh/backend/logs PUBLIC_NGINX_CONF_SOURCE=/zoumh/java/zmh/backend/nginx/nginx.conf PUBLIC_NGINX_CONF_TARGET= POST_DEPLOY_CMD=echo "=== post deploy gateway probe ==="
curl -ksS -H "Content-Type: application/json" -d '{"username":"admin","password":"admin123"}' https://zoumh.com/prod-api/auth/login || true
echo
echo "=== local gateway probe ==="
curl -sS -H "Content-Type: application/json" -d '{"username":"admin","password":"admin123"}' http://127.0.0.1:8080/auth/login || true /zoumh/java/zmh/backend/bin/deploy-backend-host.sh
ln: '/usr/bin/docker' and '/usr/bin/docker' are the same file
mysql: [Warning] Using a password on the command line interface can be insecure.
removed stale zoumh-hotel-monitor menu data
skip public nginx sync: target is empty
48de2b0dd68d517c95fe89d445d75b982f1016b0ccc8a352b84ee683c11cb110
started ruoyi-auth
38c148f3a7fc009736dacec8a1787788e01b5469f035357cd2e67aaafecdc524
started ruoyi-system
24474e1920d3822720a78e681fe2ad363dc34b427da03c185cc661449dfb56fe
started ruoyi-file
bab8ae5965a0085f0b69863010428c517bb6637cb3e96aaac0370f6303470dc1
started ruoyi-gateway
=== post deploy gateway probe ===
<html>
<head><title>502 Bad Gateway</title></head>
<body>
<center><h1>502 Bad Gateway</h1></center>
<hr><center>nginx</center>
</body>
</html>
=== local gateway probe ===
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
<title>Error 404 Not Found</title>
</head>
<body>
<h2>HTTP ERROR 404 Not Found</h2>
<table>
<tr><th>URI:</th><td>http://127.0.0.1:8080/auth/login</td></tr>
<tr><th>STATUS:</th><td>404</td></tr>
<tr><th>MESSAGE:</th><td>Not Found</td></tr>
</table>
<hr/><a href="https://jetty.org/">Powered by Jetty:// 12.1.5</a><hr/>
</body>
</html>
openjdk version "21.0.10" 2026-01-20 LTS
login_probe_response={"code":200,"msg":null,"data":{"access_token":"eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6ImQ4NDlkNGZjLThhYTktNDc5YS04NDcyLTI3MTcyMDA0Yjk3YSIsInVzZXJuYW1lIjoiYWRtaW4ifQ.tCFjLQKzwfNS77ollMSkvcUHZNIxkdk3cyAVeCl64Bk8mlfGxo1b92IJx7-rFhvDNs6xBlnfAQww9EuL7V-oxw","expires_in":720}}
gateway_probe_response=<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"/>
<title>Error 404 Not Found</title>
</head>
<body>
<h2>HTTP ERROR 404 Not Found</h2>
<table>
<tr><th>URI:</th><td>http://127.0.0.1:8080/auth/login</td></tr>
<tr><th>STATUS:</th><td>404</td></tr>
<tr><th>MESSAGE:</th><td>Not Found</td></tr>
</table>
<hr/><a href="https://jetty.org/">Powered by Jetty:// 12.1.5</a><hr/>
</body>
</html>
ruoyi-gateway 364.5MiB / 512MiB
ruoyi-file 248.7MiB / 288MiB
ruoyi-system 402.4MiB / 512MiB
ruoyi-auth 378.7MiB / 512MiB
ruoyi-gateway Up 25 seconds
ruoyi-file Up 26 seconds
ruoyi-system Up 26 seconds
ruoyi-auth Up 27 seconds
--- ruoyi-file.log tail ---
21:31:12,754 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@b9dfc5a - value "logs/ruoyi-file/error.log" substituted for "${log.path}/error.log"
21:31:12,754 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@b9dfc5a - value "logs/ruoyi-file/error.%d{yyyy-MM-dd}.log" substituted for "${log.path}/error.%d{yyyy-MM-dd}.log"
21:31:12,755 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1704600661 - No compression will be used
21:31:12,755 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1704600661 - Will use the pattern logs/ruoyi-file/error.%d{yyyy-MM-dd}.log for the active file
21:31:12,755 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - The date pattern is 'yyyy-MM-dd' from file name pattern 'logs/ruoyi-file/error.%d{yyyy-MM-dd}.log'.
21:31:12,755 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Roll-over at midnight.
21:31:12,755 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Setting initial period to 2026-04-11T04:47:15.676Z
21:31:12,755 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
21:31:12,755 |-INFO in ch.qos.logback.core.model.processor.ModelInterpretationContext@b9dfc5a - value "%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" substituted for "${log.pattern}"
21:31:12,756 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - Active log file name: logs/ruoyi-file/error.log
21:31:12,756 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - File property is set to [logs/ruoyi-file/error.log]
21:31:12,756 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [com.ruoyi] to INFO
21:31:12,756 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@267517e4 - Propagating INFO level on Logger[com.ruoyi] onto the JUL framework
21:31:12,756 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.springframework] to WARN
21:31:12,756 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@267517e4 - Propagating WARN level on Logger[org.springframework] onto the JUL framework
21:31:12,756 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to INFO
21:31:12,756 |-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@267517e4 - Propagating INFO level on Logger[ROOT] onto the JUL framework
21:31:12,756 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [console] to Logger[ROOT]
21:31:12,756 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to INFO
21:31:12,756 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [file_info] to Logger[ROOT]
21:31:12,756 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [file_error] to Logger[ROOT]
21:31:12,756 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@426e505c - End of configuration.
21:31:12,756 |-INFO in org.springframework.boot.logging.logback.SpringBootJoranConfigurator@5b022357 - Registering current configuration as safe fallback point
Spring Boot Version: 3.3.5
Spring Application Name: ruoyi-file
_ __ _ _
(_) / _|(_)| |
_ __ _ _ ___ _ _ _ ______ | |_ _ | | ___
| '__|| | | | / _ \ | | | || ||______|| _|| || | / _ \
| | | |_| || (_) || |_| || | | | | || || __/
|_| \__,_| \___/ \__, ||_| |_| |_||_| \___|
__/ |
|___/
21:31:12.783 [main] INFO c.a.n.c.u.ParamUtil - [<clinit>,89] - [settings] [req-serv] nacos-server port:8848
21:31:12.784 [main] INFO c.a.n.c.u.ParamUtil - [<clinit>,92] - [settings] [http-client] connect timeout:1000
21:31:12.785 [main] INFO c.a.n.c.u.ParamUtil - [<clinit>,97] - PER_TASK_CONFIG_SIZE: 3000.0
21:31:12.788 [Thread-2] INFO c.a.n.c.a.r.i.CredentialWatcher - [loadCredentialFromEnv,189] - null No credential found
21:31:12.817 [main] INFO c.a.n.common.labels - [getLabels,48] - DefaultLabelsCollectorManager get labels.....
21:31:12.818 [main] INFO c.a.n.common.labels - [getLabels,62] - Process LabelsCollector with [name:defaultNacosLabelsCollector]
21:31:12.818 [main] INFO c.a.n.common.labels - [collectLabels,62] - default nacos collect properties raw labels: null
21:31:12.819 [main] INFO c.a.n.common.labels - [collectLabels,69] - default nacos collect properties labels: {}
21:31:12.819 [main] INFO c.a.n.common.labels - [collectLabels,72] - default nacos collect jvm raw labels: null
21:31:12.819 [main] INFO c.a.n.common.labels - [collectLabels,78] - default nacos collect jvm labels: {}
21:31:12.819 [main] INFO c.a.n.common.labels - [collectLabels,81] - default nacos collect env raw labels: null
21:31:12.820 [main] INFO c.a.n.common.labels - [collectLabels,89] - default nacos collect env labels: {}
21:31:12.820 [main] INFO c.a.n.common.labels - [getLabels,50] - DefaultLabelsCollectorManager get labels finished,labels :{}
21:31:12.826 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
21:31:12.826 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
21:31:12.866 [main] INFO c.a.n.c.c.i.Limiter - [<clinit>,55] - limitTime:5.0
21:31:13.269 [main] INFO c.a.n.c.c.i.LocalConfigInfoProcessor - [<clinit>,65] - LOCAL_SNAPSHOT_PATH:/root/nacos/config
21:31:13.273 [main] INFO c.a.n.c.r.client - [lambda$createClient$0,118] - [RpcClientFactory] create a new rpc client of af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0
21:31:13.294 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Register server push request handler:com.alibaba.nacos.client.config.impl.ClientWorker$ConfigRpcTransportClient$$Lambda/0x000070bd813afd40
21:31:13.294 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Register server push request handler:com.alibaba.nacos.client.config.impl.ClientWorker$ConfigRpcTransportClient$$Lambda/0x000070bd813b0208
21:31:13.295 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Registry connection listener to current client:com.alibaba.nacos.client.config.impl.ClientWorker$ConfigRpcTransportClient$1
21:31:13.296 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] RpcClient init, ServerListFactory = com.alibaba.nacos.client.config.impl.ClientWorker$ConfigRpcTransportClient$2
21:31:13.307 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Try to connect to server on start up, server: {serverIp = '156.225.28.110', server main port = 8848}
21:31:13.340 [main] INFO c.a.n.c.r.c.g.GrpcClient - [createNewManagedChannel,210] - grpc client connection server:156.225.28.110 ip,serverPort:9848,grpcTslConfig:{"sslProvider":"","enableTls":false,"mutualAuthEnable":false,"trustAll":false}
21:31:13.875 [main] INFO c.a.n.c.a.AbstractAbilityControlManager - [initAbilityTable,61] - Ready to get current node abilities...
21:31:13.877 [main] INFO c.a.n.c.a.AbstractAbilityControlManager - [initAbilityTable,89] - Ready to initialize current node abilities, support modes: [SDK_CLIENT]
21:31:13.878 [main] INFO c.a.n.c.a.AbstractAbilityControlManager - [initAbilityTable,94] - Initialize current abilities finish...
21:31:13.879 [main] INFO c.a.n.c.a.d.NacosAbilityManagerHolder - [initAbilityControlManager,85] - [AbilityControlManager] Successfully initialize AbilityControlManager
21:31:13.986 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Success to connect to server [156.225.28.110:8848] on start up, connectionId = 1775914273765_156.225.28.110_59396
21:31:13.987 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
21:31:13.987 [com.alibaba.nacos.client.remote.worker.0] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Notify connected event to listeners.
21:31:13.988 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda/0x000070bd8150daf0
21:31:13.988 [com.alibaba.nacos.client.remote.worker.0] INFO c.a.n.c.c.i.ClientWorker - [onConnected,713] - [af1b489c-b2e3-4c98-8d03-4adb8c132656_config-0] Connected,notify listen context...
21:31:14.039 [main] INFO c.a.n.c.c.u.JvmUtil - [init,59] - isMultiInstance:false
21:31:14.114 [main] INFO c.r.f.RuoYiFileApplication - [logStartupProfileInfo,660] - The following 1 profile is active: "dev"
21:31:15.590 [main] WARN o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,429] - Bean 'org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration$DeferringLoadBalancerInterceptorConfig' of type [org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration$DeferringLoadBalancerInterceptorConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). The currently created BeanPostProcessor [lbRestClientPostProcessor] is declared through a non-static factory method on that class; consider declaring it as static instead.
21:31:15.593 [main] WARN o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - [postProcessAfterInitialization,437] - Bean 'deferringLoadBalancerInterceptor' of type [org.springframework.cloud.client.loadbalancer.DeferringLoadBalancerInterceptor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying). Is this bean getting eagerly injected/applied to a currently created BeanPostProcessor [lbRestClientPostProcessor]? Check the corresponding BeanPostProcessor declaration and its dependencies/advisors. If this bean does not have to be post-processed, declare it with ROLE_INFRASTRUCTURE.
21:31:15.918 [main] INFO o.a.c.h.Http11NioProtocol - [log,173] - Initializing ProtocolHandler ["http-nio-9300"]
21:31:15.922 [main] INFO o.a.c.c.StandardService - [log,173] - Starting service [Tomcat]
21:31:15.922 [main] INFO o.a.c.c.StandardEngine - [log,173] - Starting Servlet engine: [Apache Tomcat/10.1.31]
21:31:15.958 [main] INFO o.a.c.c.C.[.[.[/] - [log,173] - Initializing Spring embedded WebApplicationContext
21:31:16.731 [main] INFO c.a.c.s.SentinelWebMvcConfigurer - [addInterceptors,52] - [Sentinel Starter] register SentinelWebInterceptor with urlPatterns: [/**].
21:31:17.952 [main] WARN o.s.c.l.c.LoadBalancerCacheAutoConfiguration$LoadBalancerCaffeineWarnLogger - [afterPropertiesSet,94] - Spring Cloud LoadBalancer is currently working with the default cache. While this cache implementation is useful for development and tests, it's recommended to use Caffeine cache in production.You can switch to using Caffeine cache, by adding it and org.springframework.cache.caffeine.CaffeineCacheManager to the classpath.
21:31:18.067 [main] INFO o.a.c.h.Http11NioProtocol - [log,173] - Starting ProtocolHandler ["http-nio-9300"]
21:31:18.084 [main] INFO c.a.n.client.naming - [initNamespaceForNaming,62] - initializer namespace from ans.namespace attribute : null
21:31:18.085 [main] INFO c.a.n.client.naming - [lambda$initNamespaceForNaming$0,66] - initializer namespace from ALIBABA_ALIWARE_NAMESPACE attribute :null
21:31:18.085 [main] INFO c.a.n.client.naming - [lambda$initNamespaceForNaming$1,73] - initializer namespace from namespace attribute :null
21:31:18.090 [main] INFO c.a.n.client.naming - [<init>,74] - FailoverDataSource type is class com.alibaba.nacos.client.naming.backups.datasource.DiskFailoverDataSource
21:31:18.094 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.impl.NacosClientAuthServiceImpl success.
21:31:18.094 [main] INFO c.a.n.p.a.s.c.ClientAuthPluginManager - [init,56] - [ClientAuthPluginManager] Load ClientAuthService com.alibaba.nacos.client.auth.ram.RamClientAuthServiceImpl success.
21:31:18.183 [main] INFO c.a.n.c.r.client - [lambda$createClient$0,118] - [RpcClientFactory] create a new rpc client of 2612fcce-f616-46d3-b23f-34afaef5b508
21:31:18.185 [main] INFO c.a.n.client.naming - [<init>,109] - Create naming rpc client for uuid->2612fcce-f616-46d3-b23f-34afaef5b508
21:31:18.186 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] RpcClient init, ServerListFactory = com.alibaba.nacos.client.naming.core.ServerListManager
21:31:18.186 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Registry connection listener to current client:com.alibaba.nacos.client.naming.remote.gprc.redo.NamingGrpcRedoService
21:31:18.186 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Register server push request handler:com.alibaba.nacos.client.naming.remote.gprc.NamingPushRequestHandler
21:31:18.187 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Try to connect to server on start up, server: {serverIp = '156.225.28.110', server main port = 8848}
21:31:18.188 [main] INFO c.a.n.c.r.c.g.GrpcClient - [createNewManagedChannel,210] - grpc client connection server:156.225.28.110 ip,serverPort:9848,grpcTslConfig:{"sslProvider":"","enableTls":false,"mutualAuthEnable":false,"trustAll":false}
21:31:18.305 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Success to connect to server [156.225.28.110:8848] on start up, connectionId = 1775914278197_156.225.28.110_39332
21:31:18.305 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$ConnectResetRequestHandler
21:31:18.305 [com.alibaba.nacos.client.remote.worker.1] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Notify connected event to listeners.
21:31:18.305 [main] INFO c.a.n.c.r.client - [printIfInfoEnabled,63] - [2612fcce-f616-46d3-b23f-34afaef5b508] Register server push request handler:com.alibaba.nacos.common.remote.client.RpcClient$$Lambda/0x000070bd8150daf0
21:31:18.306 [com.alibaba.nacos.client.remote.worker.1] INFO c.a.n.client.naming - [onConnected,90] - Grpc connection connect
21:31:18.307 [main] INFO c.a.n.client.naming - [registerService,133] - [REGISTER-SERVICE] public registering service ruoyi-file with instance Instance{instanceId='null', ip='10.0.32.4', port=9300, weight=1.0, healthy=true, enabled=true, ephemeral=true, clusterName='', serviceName='null', metadata={IPv6=null, preserved.register.source=SPRING_CLOUD}}
21:31:18.324 [main] INFO c.a.c.n.r.NacosServiceRegistry - [register,76] - nacos registry, DEFAULT_GROUP ruoyi-file 10.0.32.4:9300 register finished
21:31:18.426 [main] INFO c.r.f.RuoYiFileApplication - [logStarted,56] - Started RuoYiFileApplication in 7.158 seconds (process running for 8.197)
21:31:18.502 [main] INFO c.a.n.c.c.i.CacheData - [initNotifyWarnTimeout,72] - config listener notify warn timeout millis use default 60000 millis
21:31:18.503 [main] INFO c.a.n.c.c.i.CacheData - [<clinit>,99] - nacos.cache.data.init.snapshot = true
21:31:18.504 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-156.225.28.110_8848] [subscribe] ruoyi-file-dev.yml+DEFAULT_GROUP
21:31:18.512 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-156.225.28.110_8848] [add-listener] ok, tenant=, dataId=ruoyi-file-dev.yml, group=DEFAULT_GROUP, cnt=1
21:31:18.512 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,140] - [Nacos Config] Listening config: dataId=ruoyi-file-dev.yml, group=DEFAULT_GROUP
21:31:18.512 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-156.225.28.110_8848] [subscribe] ruoyi-file+DEFAULT_GROUP
21:31:18.513 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-156.225.28.110_8848] [add-listener] ok, tenant=, dataId=ruoyi-file, group=DEFAULT_GROUP, cnt=1
21:31:18.513 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,140] - [Nacos Config] Listening config: dataId=ruoyi-file, group=DEFAULT_GROUP
21:31:18.513 [main] INFO c.a.n.c.c.i.ClientWorker - [addCacheDataIfAbsent,416] - [fixed-156.225.28.110_8848] [subscribe] ruoyi-file.yml+DEFAULT_GROUP
21:31:18.513 [main] INFO c.a.n.c.c.i.CacheData - [addListener,236] - [fixed-156.225.28.110_8848] [add-listener] ok, tenant=, dataId=ruoyi-file.yml, group=DEFAULT_GROUP, cnt=1
21:31:18.513 [main] INFO c.a.c.n.r.NacosContextRefresher - [registerNacosListener,140] - [Nacos Config] Listening config: dataId=ruoyi-file.yml, group=DEFAULT_GROUP
(♥◠‿◠)ノ゙ 文件服务模块启动成功 ლ(´ڡ`ლ)゙
.-------. ____ __
| _ _ \ \ \ / /
| ( ' ) | \ _. / '
|(_ o _) / _( )_ .'
| (_,_).' __ ___(_ o _)'
| |\ \ | || |(_,_)'
| | \ `' /| `-' /
| | \ / \ /
''-' `'-' `-..-'
--- restarting containers ---
NAMES STATUS