인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

승우님의 프로필 이미지

작성한 질문수

개발자를 위한 쉬운 도커

Leafy 애플리케이션 구성

Docker leafy-backend 실행오류

해결된 질문

작성

·

72

0

https://www.inflearn.com/community/questions/1532164/docker-%EB%B0%B1%EC%95%A4%EB%93%9C-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-%EC%8B%A4%ED%96%89%EC%8B%9C-%EC%98%A4%EB%A5%98

이 글처럼 똑같이 안되고있습니다.

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processorMetrics' defined in class path resource [org/springframework/boot/actuate/autoconfigure/metrics/SystemMetricsAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.instrument.binder.system.ProcessorMetrics]: Factory method 'processorMetrics' threw exception; nested exception is java.lang.NullPointerException

at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:486) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractBeanFactory.lambdadoGetBeandoGetBean0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory.addCandidateEntry(DefaultListableBeanFactory.java:1616) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1573) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveMultipleBeans(DefaultListableBeanFactory.java:1417) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1349) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.resolveStream(DefaultListableBeanFactory.java:2119) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.DefaultListableBeanFactory$DependencyObjectProvider.orderedStream(DefaultListableBeanFactory.java:2113) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryConfigurer.addBinders(MeterRegistryConfigurer.java:87) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]

at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryConfigurer.configure(MeterRegistryConfigurer.java:68) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]

at org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryPostProcessor.postProcessAfterInitialization(MeterRegistryPostProcessor.java:64) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:455) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1808) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620) ~[spring-beans-5.3.26.jar!/:5.3.26]

... 71 common frames omitted

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [io.micrometer.core.instrument.binder.system.ProcessorMetrics]: Factory method 'processorMetrics' threw exception; nested exception is java.lang.NullPointerException

at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.26.jar!/:5.3.26]

at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.26.jar!/:5.3.26]

... 93 common frames omitted

Caused by: java.lang.NullPointerException: null

at java.base/jdk.internal.platform.cgroupv2.CgroupV2Subsystem.getInstance(Unknown Source) ~[na:na]

at java.base/jdk.internal.platform.CgroupSubsystemFactory.create(Unknown Source) ~[na:na]

at java.base/jdk.internal.platform.CgroupMetrics.getInstance(Unknown Source) ~[na:na]

at java.base/jdk.internal.platform.SystemMetrics.instance(Unknown Source) ~[na:na]

at java.base/jdk.internal.platform.Metrics.systemMetrics(Unknown Source) ~[na:na]

at java.base/jdk.internal.platform.Container.metrics(Unknown Source) ~[na:na]

at jdk.management/com.sun.management.internal.OperatingSystemImpl.<init>(Unknown Source) ~[na:na]

at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl.getOperatingSystemMXBean(Unknown Source) ~[na:na]

at jdk.management/com.sun.management.internal.PlatformMBeanProviderImpl$3.nameToMBeanMap(Unknown Source) ~[na:na]

at java.management/sun.management.spi.PlatformMBeanProvider$PlatformComponent.getMBeans(Unknown Source) ~[na:na]

at java.management/java.lang.management.ManagementFactory.getPlatformMXBean(Unknown Source) ~[na:na]

at java.management/java.lang.management.ManagementFactory.getOperatingSystemMXBean(Unknown Source) ~[na:na]

at io.micrometer.core.instrument.binder.system.ProcessorMetrics.<init>(ProcessorMetrics.java:81) ~[micrometer-core-1.9.9.jar!/:1.9.9]

at io.micrometer.core.instrument.binder.system.ProcessorMetrics.<init>(ProcessorMetrics.java:76) ~[micrometer-core-1.9.9.jar!/:1.9.9]

at org.springframework.boot.actuate.autoconfigure.metrics.SystemMetricsAutoConfiguration.processorMetrics(SystemMetricsAutoConfiguration.java:59) ~[spring-boot-actuator-autoconfigure-2.7.10.jar!/:2.7.10]

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:na]

at java.base/java.lang.reflect.Method.invoke(Unknown Source) ~[na:na]

at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.26.jar!/:5.3.26]

... 94 common frames omitted

 

docker logs -f leafy 했을 때 이렇게 나와요..

커뮤니티에 나와있는대로 삭제했다가 다시 깔아봤고, name을 잘못적었는지도 확인해보았는데 전혀 잘못된게 없었습니다.

leafy-postgres도 'Leafy 애플리케이션 구성' 강의에서 말씀하신것처럼 정상작동하는 것도 확인했습니다.

docker inspect leafy-postgres | grep -A 2 "Networks" 를 치면

            "Networks": {

                "leafy-network": {

                    "IPAMConfig": null,

 

이렇게 나오고 있습니다.

어떻게 해야할까요 빠른답변 부탁드리겠습니다.

 

 

답변 2

0

승우님의 프로필 이미지
승우
질문자

6-5 SpringBoot 백엔드 컨테이너 구성 파트에서 소스코드 열어보는데 여기에서

build.gradle 열고

implementation 'org.springframework.boot:spring-boot-starter-actuator

actuator 의존성 삭제하시고 build 하면 동작합니다.

// implementation 'org.springframework.boot:spring-boot-starter-actuator'

이렇게 주석처리하든지 삭제하시면되요

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다.

승우님, Docker를 이용해서 leafy-backend를 실행하는 중에 오류가 발생하셨군요. 제공하신 오류 로그를 보면, Spring Boot 애플리케이션이 시작되지 못하고 NullPointerException과 연관된 오류로 인해 미터릭(bean) 생성 시 문제가 생기고 있는 것으로 보입니다. 이는 주로 시스템 환경 및 런타임 조건에서 문제가 발생할 때 나타날 수 있습니다.

다음에 몇 가지 해결 방법을 제안 드리겠습니다:

  1. 자바 버전 확인:

    • CgroupV2Subsystem 혹은 CgroupMetrics와 관련된 오류는 Docker와 JVM의 특정 버전 사이의 호환성 문제로 인해 발생할 수 있습니다. 실행 중인 JVM의 버전을 확인하고 가능하다면, 최신의 LTS 버전으로 업데이트해보세요.
  2. 의존성 버전 확인:

    • Micrometer 혹은 Spring Boot와의 호환 문제로 인해 발생할 수 있습니다. 모든 의존성이 제대로 최신 상태인지를 확인하고, 특히 MicrometerSpring Boot 관련 의존성이 호환되는 버전인지 확인하세요.
  3. Docker 데몬 설정 확인:

    • Docker 데몬이 새로운 cgroups를 사용하는지 확인이 필요할 수도 있습니다. 사용 중인 Docker 버전이 이를 제대로 지원하는지와 설정이 올바른지 확인하세요.

유사한 질문과 해결 사례로는 아래 링크들을 참고하실 수 있습니다:

위의 정보를 검토하신 후에도 문제가 해결되지 않는다면 보다 구체적인 상황이나 새로운 오류 메시지를 알려주시면 추가적인 도움을 드릴 수 있도록 하겠습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

승우님의 프로필 이미지

작성한 질문수

질문하기