开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 1 天,点击查看活动详情
一、/home/nacos/init.d/路径不存在报错
进入容器终端,发现终端的报错信息如下:
2023-02-07 11:19:26 ***************************
2023-02-07 11:19:26 APPLICATION FAILED TO START
2023-02-07 11:19:26 ***************************
2023-02-07 11:19:26
2023-02-07 11:19:26 Description:
2023-02-07 11:19:26
2023-02-07 11:19:26 Config data location '/home/nacos/init.d/' does not exist
2023-02-07 11:19:26
2023-02-07 11:19:26 Action:
2023-02-07 11:19:26
2023-02-07 11:19:26 Check that the value '/home/nacos/init.d/' is correct, or prefix it with 'optional:'
信息提示/home/nacos/init.d/不存在,解决方法就是进入容器终端,在/home/nacos目录中创建init.d文件夹即可解决。
mkdir /home/nacos/init.d
二、无法绑定tomcat根目录
修复完成第一个报错后就会出现这个报错,容器终端报错如下:
2023-02-07 11:22:39 ***************************
2023-02-07 11:22:39 APPLICATION FAILED TO START
2023-02-07 11:22:39 ***************************
2023-02-07 11:22:39
2023-02-07 11:22:39 Description:
2023-02-07 11:22:39
2023-02-07 11:22:39 Failed to bind properties under 'server.tomcat.basedir' to java.io.File:
2023-02-07 11:22:39
2023-02-07 11:22:39 Property: server.tomcat.basedir
2023-02-07 11:22:39 Value:
2023-02-07 11:22:39 Origin: InputStream resource [resource loaded through InputStream] - 34:0
2023-02-07 11:22:39 Reason: failed to convert java.lang.String to java.io.File (caused by java.lang.IllegalStateException: Could not retrieve file for class path resource []: class path resource [] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/home/nacos/target/nacos-server.jar!/BOOT-INF/classes!/)
2023-02-07 11:22:39
2023-02-07 11:22:39 Action:
2023-02-07 11:22:39
2023-02-07 11:22:39 Update your application's configuration
这个报错原因是nacos的配置文件中指定了空的tomcat目录,虽然配置文件中的注释描述留空后,nacos会自动读取默认值,但是是实际上并没有读取,导致程序异常。
解决办法一:注释掉tomcat选项,nacos就能成功读取默认值。
解决办法二:把tomcat选项指向一个存在的目录。
开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 1 天,点击查看活动详情