강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của tjsdlswkd1
tjsdlswkd1

câu hỏi đã được viết

Giải quyết kiến trúc không đồng bộ bằng RabbitMQ một cách nhanh chóng

7.Gửi tin nhắn bất đồng bộ cơ bản phần 2

인증 에러

Viết

·

55

0

학습중 궁금한 것은 언제든 문의 하세요.

질문을 최대한 자세히 남겨주시면 반드시 답변 드리도록 하겠습니다.

추가로 알고 싶은 내용도 요청해주시면 강의 자료를 업데이트 해서 제공할 예정입니다.

application.yml

spring:
  application:
    name: HelloMessageQueue

  rabbitmq:
    host: localhost
    port: 5672
    username: admin
    password: admin

server:
  port: 8080

 docker-compose.yml

services:
  rabbitmq:
    image: rabbitmq:3-management
    container_name: mq
    ports:
      - "5672:5672"
      - "15672:15672"
    environment:
      RABBITMQ_ERLANG_COOKIE: rabbitmqCookie
      RABBITMQ_DEFAULT_USER: admin
      RABBITMQ_DEFAULT_PASS: admin

이렇게 해서 실행하면
2025-08-08T11:17:15.145+09:00 ERROR 11684 --- [HelloMessageQueue] [ restartedMain] o.s.boot.SpringApplication : Application run failed

org.springframework.context.ApplicationContextException: Failed to start bean 'container'

at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:408) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:394) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:586) ~[spring-context-6.2.9.jar:6.2.9]

at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]

at org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:364) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:310) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:1006) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:630) ~[spring-context-6.2.9.jar:6.2.9]

at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.5.4.jar:3.5.4]

at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) ~[spring-boot-3.5.4.jar:3.5.4]

at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) ~[spring-boot-3.5.4.jar:3.5.4]

at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) ~[spring-boot-3.5.4.jar:3.5.4]

at org.springframework.boot.SpringApplication.run(SpringApplication.java:1361) ~[spring-boot-3.5.4.jar:3.5.4]

at org.springframework.boot.SpringApplication.run(SpringApplication.java:1350) ~[spring-boot-3.5.4.jar:3.5.4]

at com.study.rabbitmq.RabbitmqApplication.main(RabbitmqApplication.java:10) ~[main/:na]

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

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

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

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

at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) ~[spring-boot-devtools-3.5.4.jar:3.5.4]

Caused by: org.springframework.amqp.AmqpIllegalStateException: Fatal exception on listener startup

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.waitForConsumersToStart(SimpleMessageListenerContainer.java:643) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doStart(SimpleMessageListenerContainer.java:603) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.start(AbstractMessageListenerContainer.java:1417) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:405) ~[spring-context-6.2.9.jar:6.2.9]

... 19 common frames omitted

Caused by: org.springframework.amqp.rabbit.listener.exception.FatalListenerStartupException: Authentication failure

at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.start(BlockingQueueConsumer.java:631) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.initialize(SimpleMessageListenerContainer.java:1482) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1322) ~[spring-rabbit-3.2.6.jar:3.2.6]

at java.base/java.lang.Thread.run(Thread.java:842) ~[na:na]

Caused by: org.springframework.amqp.AmqpAuthenticationException: com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.

at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:64) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:632) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createConnection(CachingConnectionFactory.java:726) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.createConnection(ConnectionFactoryUtils.java:257) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils$RabbitResourceFactory.createConnection(ConnectionFactoryUtils.java:345) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.doGetTransactionalResourceHolder(ConnectionFactoryUtils.java:140) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.getTransactionalResourceHolder(ConnectionFactoryUtils.java:102) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.getTransactionalResourceHolder(ConnectionFactoryUtils.java:85) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.listener.BlockingQueueConsumer.start(BlockingQueueConsumer.java:625) ~[spring-rabbit-3.2.6.jar:3.2.6]

... 3 common frames omitted

Caused by: com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.

at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:395) ~[amqp-client-5.25.0.jar:5.25.0]

at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:1251) ~[amqp-client-5.25.0.jar:5.25.0]

at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:1198) ~[amqp-client-5.25.0.jar:5.25.0]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.connectAddresses(AbstractConnectionFactory.java:678) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.connect(AbstractConnectionFactory.java:647) ~[spring-rabbit-3.2.6.jar:3.2.6]

at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:593) ~[spring-rabbit-3.2.6.jar:3.2.6]

... 10 common frames omitted
이 에러가 발생합니다

{D0D6A71B-28B0-49F6-90BB-A51DF06B0ECA}.png


계정도 있는데 인증이 안되는 이유를 모르겠습니다

javaspring-bootjpamsawebsocketrabbitmq

Câu trả lời 2

0

codevillain님의 프로필 이미지
codevillain
Người chia sẻ kiến thức

안녕하세요. 메시지 에러 자체는 RabbitMQ의 인증 에러 인데요, 도커 ps와 log를 확인해보시고, management 에 접근해보시기 바랍니다. (admin/admin으로 http://localhost:15672에 접근되는지)

원래 기본 계정은 guest/guest 입니다.

강의에 나온대로 RabbitMQ를 먼저 설치한 뒤 테스트 해보시고 제대로 된다면 도커 설정의 문제이므로 (로그나 권한 실행 타이밍으로 인한 에러)일 이 부분을 체크 먼저 하시고 범위를 줄여오류 사항을 예측해봐야 합니다.

구글에서 docker rabbitmq access reused error 로 검색했을때 위에 언급한 문제들의 해결방법이 나오므로 참고해보시되, 먼저 어드민 콘솔 부터 접근 되는지, 계정이 맞는지 부터 점검 해보시기 바랍니다.

 

감사합니다.

0

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

RabbitMQ 인증 문제로 어려움을 겪고 계신 것 같네요. 에러 메시지를 기반으로 접근문제와 관련된 몇 가지 점검할 사항들을 설명드리겠습니다.

주요 원인

  1. 로그인 불일치:

    • application.yml 파일과 docker-compose.yml 파일에서 설정된 계정 정보(사용자 이름과 비밀번호)가 정확히 일치하는지 확인하세요. 양쪽 모두 admin으로 설정되어 있는지 점검 바랍니다.
    • 특히, 공백이나 잘못된 문자가 없는지 확인하세요. 종종 불필요한 공백이 문제를 일으킬 수 있습니다.
  2. 네트워크 문제:

    • localhost가 올바르게 구성되어 있는지 확인하세요. 경우에 따라 네트워크 설정 문제로 인해 localhost 대신 컨테이너의 IP 주소를 직접 지정하는 것이 필요할 수 있습니다.
  3. RabbitMQ 서비스 실행 상태:

    • docker-compose up 명령어를 실행하여 RabbitMQ 컨테이너가 정상적으로 실행되고 있는지 확인하세요.
    • docker ps 명령어로 RabbitMQ 컨테이너의 상태를 점검하여 실행 중인지 확인해 주세요.
  4. 포트 충돌:

    • 5672, 15672 포트가 다른 프로세스에 의해 사용 중인 것은 아닌지 확인해 주세요. netstat -ano 명령어를 통해 포트 사용 현황을 점검할 수 있습니다.

아래 링크는 추가적인 해결책을 제공하는 다른 Q&A입니다:
- “Spring Boot 프로젝트에서 RabbitMQ 연결 오류 해결 방법”
- “Spring AMQP 관련 구성 문제 해결 방법”

위 해결책이 문제 해결에 도움이 되길 바라며, 추가로 궁금한 사항이 있으시면 언제든지 이어서 질문해 주세요. 곧 지식공유자님께서 더 상세한 답변을 제공해 주실 것입니다.

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

Hình ảnh hồ sơ của tjsdlswkd1
tjsdlswkd1

câu hỏi đã được viết

Đặt câu hỏi