Dockerfile 에 FROM node 또는 FROM mongo 를 입력하여 도커를 만드는 걸로 배웠습니다. 그런데 FROM node나 FROM mongo라는 명령어를 통해 어떤 운영체제에 어떤 것이 설치되고 실행되는지지 등 해당 명령어에 대한 정보를 어떻게 알 수 있나요? 예를 들면 Dockerfile.mongo 파일에서는 따로 RUN과 같이 프로그램을 실행시키는 명령어를 입력하지 않더라구요. FROM node에서도 따로 yarn이나 우분투를 설치하지 않고서도 이미 포함이 되어있었구요. 도커허브 사이트 들어가서 mongo를 검색해봐도 그냥 mongo 자체에 대한 설명만 있더라구요 ㅠ
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
구체적인 에러코드 알려달라 하셔서 대답글에 알려드렸는데 못보신거 같아서 다시 올려봅니다. fatal: unable to access ' https://github.com/깃유저명/깃프로젝트명.git/ ': Failed to connect to {EC2 PUBLIC IP} port 3000: Connection timed out 이라는 에러메시지 발생했으며, 위 사진에서는 git clone으로 인한 에러이지만 pull로 당겨도 동일 에러가 발생합니다. 답변 기다리는동안 틈틈히 찾아봤는데 결국 해결이 안돼서 다시 여쭤보는점 죄송합니다 ㅠㅠ
안녕하세요. 로드 밸런서 관련 질문드립니다. 현재 구글 클라우드로 배포를 진행하며 하나의 인스턴스만 사용 중인데 로드밸런서로 어떻게 부하를 분산시켜줄 수 있나요? 강의에서는 그냥 로드밸런서의 사용법을 학습하기 위해 큰 의미는 없지만 사용한 것인지 아니면 인스턴스가 하나라도 로드밸런서를 적용하면 좋은 점이 있는 것인지 궁금합니다.
현 시점에서 nest공식문서 가보면 어센틱케이션에 passport는 없어지고 그냥 @nestjs/jwt만 있는것으로 바뀌어있고 passport는 recipes카테고리로 이동되어있고 install 도 $ npm install --save @nestjs/passport passport passport-local $ npm install --save-dev @types/passport-local 이렇게 나와있는것으로 보이는데 그냥 위 passport따라가면되나요?
폴더 복사 붙여넣기 후 이름 변경시 아래와 같은 에러가 뜬다면 뭘 점검해 봐야 하나요? 복사 붙이기로 새로 생성된 폴더 안의, 파일을 열거나 하지 않았는데, 복사 완료 후 폴더명 변경시 왜 오류가 나는 걸까요? 답변 주시면 감사하겠습니다. Error: '03-04-rest-api-with-express-board-'을 (를) 'section03'(Error: EBUSY: resource busy or locked, rename 'c:\study\node_codecamp\class\section03\03-04-rest-api-with-express-board-' -> 'c:\study\node_codecamp\class\section03\03-04-rest-api-with-express-swagger')(으)로 이동할 수 없습니다.
안녕하세요! 해당 수업에서 CORS 에러가 발생한 이유를 다른 작성자 분께서 질문해주셨는데, 강사님께서 프론트엔드와 백엔드의 포트가 달라서 그렇다고 대답해주셨습니다. 백엔드에서는 app.listen을 통해 포트를 설정을 해주었지만, 프론트엔드에서는 포트를 설정한 적이 없는데 포트번호를 어떻게 알 수 있나요..? 설정하는 방법이 따로 있는건가요? 그리고 이전수업에서 한 컴퓨터에서는 프론트엔드와 백엔드의 포트번호가 달라야한다고 말씀하셨는데, 그렇다면 하나의 컴퓨터에서는 same origin이 될 수 없는건가요?
안녕하세요 강사님! 강의 재미있게 보면서 공부하고 있습니다. PostLikeAPIView에 대한 overriding 관련 문의드립니다. class PostLikeAPIView(UpdateAPIView): queryset = Post.objects.all() serializer_class = PostLikeSerializer # PATCH method def update(self, request, *args, **kwargs): partial = kwargs.pop('partial', False) instance = self.get_object() # data = instance.like + 1 data = {'like': instance.like + 1} serializer = self.get_serializer(instance, data=data, partial=partial) serializer.is_valid(raise_exception=True) self.perform_update(serializer) if getattr(instance, '_prefetched_objects_cache', None): # If 'prefetch_related' has been applied to a queryset, we need to # forcibly invalidate the prefetch cache on the instance. instance._prefetched_objects_cache = {} # return Response(serializer.data) return Response(data['like']) 강의 내용 중에 위 괕이 오버라이딩 하는 로직이 있었는데요. # views.py class PostLikeAPIView(UpdateAPIView): queryset = Post.objects.all() serializer_class = PostLikeSerializer def patch(self, request, *args, **kwargs): instance = self.get_object() request.data['like'] = instance.like + 1 super().patch(request, *args, **kwargs) return Response(request.data['like']) # serializers.py class PostLikeSerializer(serializers.ModelSerializer): class Meta: model = Post fields = ['like'] 이런 식으로 해도 같은 결과를 얻을 수 있을 수 있었습니다. 이렇게한 의도는 update method를 overriding 하는 거보다 patch method를 overriding 할 때 비즈니스 로직 코드가 더 짧으니 실수가 적지 않을까 해서 입니다. 제가 적은대로 사용하는 것도 유효한지, 어떤 단점이 있을지 잘 생각이 안나서 문의드립니다. 강의 감사하게 보고있습니다. 항상 건강하시길 바라겠습니다^^
안녕하세요. 강의 잘 듣고 있습니다. user - service - google가 있다고 했을 때, user가 oauth code grant방식으로 login을 하면 service가 callback을 통해 code를 받게되고, 그 정보와 다른 정보를 조합하여 google로 부터 access token과 refresh token을 받아올텐데요. 여기서 token을 어떤식으로 처리하는지 궁금합니다. service가 google로 부터 받은 token들을 app으로 전달하는 건가요? 그렇다면 app은 token이 만료되면 google에 직접 토큰을 다시 요청하는걸까요? 아니면 service를 통해 relay를 해서 토큰을 다시 요청할까요? service는 token이 올바른건지는 검증할 수 없으니 db에 저장을 해 두고 나중에 같은 토큰을 user로부터 받았을때 같은지 비교해서 허용할 지 말지 알 수 있을거 같은데 이렇게 하는건가요? 아니면 service가 직접 새로운 토큰들을 생성해서 관리하는게 좋을까요? 그리고 public app에서 보안을 더 강화하기 위해 pkce방식도 쓰는거 같던데 실제 많이 쓰시는지 궁금하네요. 답변 부탁드립니다. 감사합니다.
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
certbot을 통해 https를 적용한 뒤에 front 파일에 변경, 추가할 파일이 있어서 git pull origin main으로 시도해 봤지만 타임 아웃 에러가 걸리고 혹시 clone으로 하면 될까 해서 해봤지만 역시 타임아웃 에러가 걸렸습니다. 방법을 찾아보려고 열심히 구글링 2일간 해봤지만 도무지 개선이되질 않아서 ㅠㅠ 혹시 문제원인이나 해결방안 귀뜸해 주시면 감사하겠습니다.