묻고 답해요
152만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
순위 정보를
불러오고 있어요
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
도커 이미지 생성 및 소스 빌드에 관한 질문입니다.
12.01 분 쯤에 코드를 수정하시고 바로 docker build로 넘어가시던데 그전에 Spring으로 할때에는 코드 수정하고 ./gradlew clean build라는 명령어와 함께 소스빌드를 거친후 docker build를 하셨는데 혹시 뭔가 차이점이 있을까요??
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
데이터가 null만 나오는 이유
안녕하세요, 질문 드립니다. /catalogs 조회하는 api 에서 catalogService.getAllCatalogs();에서 데이터는 디비에서 잘 들고 오는데 ModelMapper만 통과하면 모든 필드가 null로 return 되고 있습니다. 동일한 스팩의 user-service 에서 user 조회 api는 정상적으로 조회가 됩니다... 이유를 모르겠어서 납깁니다..(created_at 필드는 추가를 하지 않았습니다. 이문제는 아닌 것 같아요)
-
미해결AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법
기본 라우팅 테이블을 사용하지 않는 이유가 뭔가요?
라우팅 테이블 생성 실습 시에, 기본으로 생성되어 있는 라우팅 테이블을 수정해서 사용하지 않는 이유가 궁금합니다.기본값으로 설정되어 있기도 한데 말이죠.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
exec /usr/java/openjdk-17/bin/java: exec format error
EC2에서 ECR이미지를 pull하여 실행중에exec /usr/java/openjdk-17/bin/java: exec format error 해당 오류가 계속발생합니다.dockerimage가 ec2의 arm64와 달라서 그렇다는 글도 있어docker buildx build --platform linux/arm64 -t kube-ecr . 해당 명령어로 build하여 ECR에 push도 해보고 했지만 여전히 같은 오류가 발생합니다.어떻게 해결해야할까요??
-
해결됨Microservice 구현 (with EDA,Hexagonal, DDD)
RentalCard 의 calculateLateFee 메서드 구현이 잘못된 것 같습니다.
안녕하세요.calculateLateFee 메서드에 작성해주신 코드 중 아래 부분에 오류가 있는 것이 아닌지 확인 부탁드립니다.private void calculateLateFee(RentalItem rentalItem, LocalDate returnDate) { if (returnDate.compareTo(rentalItem.getOverdueDate()) > 0) { int point = Period.between(rentalItem.getOverdueDate(), returnDate).getDays() * 10; this.lateFee.addPoint(point); //문제 } }아래처럼 수정되어야 하는 것이 아닌지 질문드립니다.private void calculateLateFee(RentalItem rentalItem, LocalDate returnDate) { if (returnDate.compareTo(rentalItem.getOverdueDate()) > 0) { int point = Period.between(rentalItem.getOverdueDate(), returnDate).getDays() * 10; this.setLateFee(this.lateFee.addPoint(point)); //수정 } }감사합니다.
-
미해결DevOps를 위한 Docker 가상화 기술 (Private Harbor Registry)
섹션 1이나 2 등등 강의 자료는 없는 걸까요?
섹션 1이나 2 등등 강의 자료는 없는 걸까요?
-
해결됨비전공자도 이해할 수 있는 쿠버네티스 입문/실전
Secret와 ConfigMap의 차이가 궁금합니다!
보안적으로 민감한 변수를 저장하기 위해 활용한다고 배웠습니다.그러나 Secret의 작성 방법이 별다른 암복호화 로직없이 configMap과 99% 동일한 것 같아서요. 같은 repository에서 Secret과 ConfigMap가 함께 위치하는 경우ConfigMap에 접근할 수 있는 사용자는 Secret에도 손쉽게 접근할 수 있을것 같다는 생각이 듭니다. Secret이 ConfigMap보다 어떠한 측면에서 보안상의 이점이 있는지 궁금합니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
mysql 서버 띄우기
deployment는 정상적으로 띄운거 같은데 위 설정과 같이 데이터 그립에서 연결테스트를하면 해당 오류가 발생합니다.. 왜 그런것일까요?
-
미해결AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법
private instance 80포트 연결불가
이런 에러가 뜨는데 bastion-host 및 goopang-private-ec2-instance 생성 시 강의에서도 ssh 22포트 외에 따로 80포트를 허용하는 내용은 보이지 않아서 질문드립니다해당 에러를 80포트를 허용하지 않고도 해결할 수 있나요?
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
EC2에서 쿠버네티스로 백엔드(Spring Boot) 서버 띄우기
EC2에서 쿠버네티스로 백엔드(Spring Boot) 서버 띄우기 강의에서kubectl get deployment를 실행하면 ImagePullBackOff 가뜨고 이미지를 가져오지 못하는 데 외 그럴까요 .이틀 밥새도 해결 못해서 문의 들여 봅니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
도커 컨테이너로 동작할 때 user-service에서 403 forbidden 오류 관련
유사한 질문이 있어서 도움이 될 수 있을까 찾아 봤지만 해당 github에 접근할 수 없었고(아마 삭제한 듯), chat GPT를 통해서 답을 얻을 수 있을까 질문을 해 봤지만 해결책이 나오지 않아서 대략 1주일 이상을 헤매고 있었습니다. 그런데 강사님이 다른 분의 질문에 답을 주신 것을 보고 user-service의 SecurityConfig.java 파일에서 .requestMatchers("/**").access( new WebExpressionAuthorizationManager("hasIpAddress('127.0.0.1') or hasIpAddress('172.18.0.5') or hasIpAddress('192.168.0.172')")) // ip address of my pc .anyRequest().authenticated()위의 코드처럼 나의 pc의 ip address를 포함하니 더이상 403 오류가 발생하지 않더군요. 그래서 결국에는 내 pc의 ip address를 포함해야 하는구나라고 생각했습니다. 그런데 동일한 코드를 다른 pc(이 pc에서도 계속해서 403 오류 발생했었음)에서 구동시켰더니 내 pc의 ip address를 변경시키지 않았음에도 403 오류 발생 없이 잘 동작하더군요. 그동안 무엇이 문제였을까요? 물론 github에 올라가 있는 configuration 파일에서도 gateway의 ip adddress를 172.18.0.5로 지정했고, SecurityConfig.java에서도 위의 코드같이 172.18.0.5를 포함했었습니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
pod는 정상적인데 페이지가 안나와요
pod, service, deployment 정상적으로 실행되는데 페이지가 작동하지 않는다고 나옵니다 Hello,World 가 나와야하는데 무엇이 문제일까요
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Serializable에 대해서 질문입니다!
안녕하세요 강사님!제가 토이 프로젝트를 진행했을 때 엔티티에 implements Serializable를 하지 않았을 때 오류가 나지 않고 정상적으로 잘 되었는데(스프링 부트 3.2.4 사용 했습니다)강사님 께서는 앞선 카탈로그 엔티티 및 오더 엔티티에서 둘 다 Serializable를 implements 하셨는데 강의 말씀 하시기를 직렬화 때문에 사용을 하셨다고 말씀해주셨는데 해당과정에서 Serializable을 implements 을 하지 않으면 어떤 부분에서 오류가 나는지 여쭤 볼 수 있을까요??어느 부분에서 implements Serializable가 필요한 부분인지 모르겠습니다 ㅠㅠ보통 일반적으로 스프링에서 Jackson? 으로 직렬화를 자동으로 지원해주어 implements를 따로 해줄 필요가 없다고 알고 있었습니다.기초적인 질문이었다면 먼저 죄송하다는 말씀 드리면서 질문 드리겠습니다!감사합니다.
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
ConfigMap, Secret 매니패스트 파일을 변경했을 때 꼭 Deployment를 restart 해야 하나요?
안녕하세요, 강의 잘 보고 있습니다! 정말 감사합니다. ConfigMap, Secret 등 환경 변수 관리 값들을 조절해보면서나름대로 테스트를 해보고 있습니다. 그런데 갑자기 궁금증이 생겨 문의드려요. 혹시 kubectl apply -f 를 통해 ConfigMap, Secret에 대한 설정을 변경했을 때, Deployment를 재구동하지 않고 실시간으로 반영시킬 수 있는 방법은 없을까요? Deployment가 지금처럼 몇 대 안될 때는 상관 없을 것 같은데 되게 많을 경우에는 재구동하는 것도 부담이 되는 작업일 수도 있을 것 같아서요. (제 개인적인 생각 입니다..)
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
인텔텔리제이 관련
안녕하세요 쿠버네티스 강의듣던중 실습보단 프로그램설치를 못따라가서 문의남깁니다. 현재 윈도우에서 쿠버네티스를 사용하고있습니다.인텔리제이는 무료30일이후 라이센스 비용을내는거같은데혹시 yaml 파일을 만들수있는 프로그램이있을까요? 그리고 터미널에서 kubectl 명령어는 인텔리제이에서만 제공하는 기능일까요 ?
-
해결됨AWS로 쉽고 빠르지만 아주 견고한 서버 환경을 구축하는 방법
로드밸런서 HTTP/HTTPS 리스너 규칙 설정 질문
안녕하세요 강사님! 항상 강의로 재미있게 공부하고 있습니다! 다름이 아니라 ACM으로 SSL 인증서를 적용하면 로드밸런서의 리스너 규칙을 HTTPS 만 허용하고 HTTP 리스너는 404 응답을 보내게 설정해도 되는 걸까요?로드밸런서 리스너 규칙HTTPSHTTP 이렇게 하려는 이유는 기존 HTTP 리스너만 있는 상태에서 웹소켓으로 통신을 하려고 하는데, 프론트에서 HTTPS로 웹소켓 연결 요청을 보내게 되면, "Handshake failed due to invalid Upgrade header: null" 이런 에러가 뜨더라고요!그래서 찾아본 결과 ALB가 리버스 프록시로서 HTTP 요청을 HTTPS로 리다이렉션 하는 과정에서 WebSocket upgrade 헤더 손실이 발생한다고 하더라고요!(이게 맞는 내용일까요..?) 아직 에러를 해결하는 중이라 이게 정답인지 아닌지는 아직 잘 모르겠지만.. 이런 문제로 HTTPS 리스너를 추가해 보려고 합니다! 그리고 하는 김에 보안강화를 위해 HTTP는 404응답, HTTPS 요청만 허용해 보려고 하는데 이렇게 해도 되는 걸까요? + 추가로 이렇게 되면 ALB 보안그룹의 인바운드를 HTTPS를 허용하면 되는 거겠죠?!
-
미해결비전공자도 이해할 수 있는 쿠버네티스 입문/실전
no match platform
Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 16m default-scheduler Successfully assigned default/spring-deployment-6d776f4dc5-5fg5k to ip-172-31-40-146 Normal Pulling 14m (x4 over 16m) kubelet Pulling image "149536500787.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0" Warning Failed 14m (x4 over 16m) kubelet Failed to pull image "149536500787.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0": rpc error: code = NotFound desc = failed to pull and unpack image "149536500787.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0": no match for platform in manifest: not found Warning Failed 14m (x4 over 16m) kubelet Error: ErrImagePull Warning Failed 14m (x6 over 16m) kubelet Error: ImagePullBackOff Normal BackOff 62s (x63 over 16m) kubelet Back-off pulling image "149536500787.dkr.ecr.ap-northeast-2.amazonaws.com/kube-ecr:1.0"쿠버네티스로 AWS에 배포하는 과정에서 위와 같은 에러가 발생합니다. 어떻게 해결해야 될까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
깃허브에서 똑같이 user-service security
클래스 두개 그대로 복붙하는데 "로그인만 안됩니다" 오류내용은 { "timestamp": "2024-12-11T18:03:34.879+00:00", "status": 404, "error": "Not Found", "trace": "org.springframework.web.servlet.resource.NoResourceFoundException: No static resource .\n\tat org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:585)\n\tat org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:52)\n\tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1088)\n\tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:978)\n\tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)\n\tat org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)\n\tat jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)\n\tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)\n\tat jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108)\n\tat org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)\n\tat org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:101)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)\n\tat org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131)\n\tat org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227)\n\tat org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)\n\tat org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)\n\tat org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)\n\tat org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)\n\tat org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)\n\tat org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)\n\tat org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)\n\tat org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:243)\n\tat org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)\n\tat org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)\n\tat org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:238)\n\tat org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362)\n\tat org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140)\n\tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)\n\tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\n\tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483)\n\tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)\n\tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\n\tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\n\tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)\n\tat org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)\n\tat org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\n\tat org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905)\n\tat org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)\n\tat org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\n\tat org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)\n\tat java.base/java.lang.Thread.run(Thread.java:1583)\n", "message": "No static resource .", "path": "/" }포스트맨에서 이렇게뜨고 로그인말고는 다됩니다 로그인할때 post요청보낼때 저렇게뜹니다 코드는 git에서 복붙한거라 다른게없스니다
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Slf4j log cannot find symbol 오류
안녕하세요 강의를 보면서 실습을 하다가 오류가 생겨서 질문드립니다 !Slf4j log cannot find symbol 오류가 뜨는데요 관련 Q&A를 따라해도, 인텔리제이에서 lombok 설치해도, clean을 해도 해결이 안돼서요이렇게 뜨는데 뭐가 문제인지 알수있을까요 ?감사합니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
자료 다운받고 굿노트에
옮기려는데 자꾸 암호를 적으라고해서요..;;
주간 인기글
순위 정보를
불러오고 있어요