inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

vue.js 를 cloudfront+s3+Route53를 적용하여 배포

미해결

비전공자도 이해할 수 있는 CI/CD 입문·실전

안녕하세요 강사님의 AWS 강의도 들었습니다. 만약 도메인을 적용하고 배포하는 경우 CNAME을 통한 배포방식이 맞는지 블로그도 열심히 찾아보고 했는데 안되가지고 질문 드립니다. cloudfront가 기존에 pdf랑 달라서 chatgpt한테 물어보면서 배포를 해 보아도 https + domain이 동시에 적용이 되지 않아 질문 드립니다. 단순 정적 웹사이트(S3 ) 만을 이용한 것은 정말 잘 되지만 cloudfront에 htpps+ domain 을이용한 배포가 되지 않아 질문 드립니다.

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
KMC 댓글 2 좋아요 0 조회수 138

ami 검색이 안돼요

미해결

차이를 만드는 AWS 클라우드 보안 첫걸음

ami 검색이 안돼요. 혹시 지우셨나요?

  • aws
  • iam
김지완[학생](소프트웨어융합대학 댓글 1 좋아요 0 조회수 84

S3에 프로젝트 업로드하기 오류

미해결

비전공자도 이해할 수 있는 CI/CD 입문·실전

안녕하세요 이 부분분을 듣고 코드를 깃허브에 push 했는데 이런 에러가 계속 나가지고 질문드립니다. chatgpt로 돌려서 답장 받은거는 다 해봤습니다.

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
KMC 댓글 2 좋아요 0 조회수 138

가용영역마다의 nat 게이트웨이 필수?

미해결

비전공자도 이해할 수 있는 AWS 중급/실전 (보안, 가용성편)

선생님께서 설계하신 것처럼 가용영역마다 nat gateway를 생성하셨던데 가용영역마다 natgateway는 분리되어야하나요? region-b 의 server는 region-a의 natgateway를 이용할 수 없나요?

  • aws
  • 아키텍처
  • devops
  • vpc
  • infrastructure
박동규 댓글 2 좋아요 0 조회수 145

시작하려는데 계속 오류가 발생합니다.

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "drop table if exists [*]user cascade "; expected "identifier"; SQL statement: 버전도 맞췄는데 뭐가 문제일까요

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
u4253 댓글 2 좋아요 0 조회수 93

Rds부분 이해가 잘안되서요 ㅠ

미해결

비전공자도 이해할 수 있는 AWS 입문/실전

마지막에 Express 실습말고 스프링부트로 예시없을까요? 뭘하는지 이해를 잘못하겠스니다 ㅠ

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
임다정 댓글 2 좋아요 0 조회수 71

HTML 문법 공부

해결됨

실전! Django 입문 [최신 5.2 버전]

내용을 따라가면서 먼저 HTML 문법을 알아야 하겠다는 생각입니다. 교재나 공부할 수 있는 방법에 대해서 조언 부탁드립니다. 따로 책을 보는 것이 좋은지, 아니면 별도의 온라인 강의를 듣는게 좋은지 ?

  • python
  • django
  • aws
  • rest-api
  • drf
Young Sang Hwang 댓글 2 좋아요 0 조회수 102

실전문제풀이 6 19번

미해결

AWS Certified Cloud Practitioner 자격증 준비하기

'서버가 완전히 활용되고 허용되지 않는다'라는 말이 모호하게 느껴집니다. 개발/테스트 환경이고, 비용을 줄이는 -> 온디맨드 아니면 스팟인데, 이 문제의 정답이 스팟이 아닌 이유가 뭔가요?

  • 네트워크
  • aws
indigosky94 댓글 3 좋아요 0 조회수 111

마지막 관문에 대한 궁금증

미해결

비전공자도 이해할 수 있는 AWS 입문/실전

마지막 관문의 요구사항을 한번에 다 수행하면 좋겠지만 시간 관계상 하루에 다 못하거나 이것저것 헤매다보면 시간을 하루만에 다 못 끝낼수도 있을 거 같은데 그럴 경우 ec2,rds,https,s3,cloudFront등 서비스의 요금이 어떻게 부과될까요?? 각 서비스 생성 후 사용을해야 부과가 되는건지 아니면 그냥 시간만 지나도 부과가 되는건지 궁금합니다..! 다른 질문 답변에서 보았던 내용중 cloudFront를 사용하면 ELB를 안써도 된다는 답변을 보았는데 이유가 무엇일까요? cloudFront는 cdn의 기능을 하는 서비스이고 ELB는 로드밸런서의 기능을 하는 서비스인데 단순 정적 웹사이트만 배포하는게 아닌 백엔드까지 배포하게되면 ELB도 연결을 해야되는게 아닌가요?

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
Cola 댓글 2 좋아요 0 조회수 83

[auth][error] JWTSessionError: Read more at...

미해결

인프런 클론코딩 Part 1: Next.js와 NestJS로 시작하는 실전 프로젝트

강의 25. [BE] 백엔드 Auth Guard 구현 시작. Auth Guard로 유저 아이디 가져오는 부분 작업 타임라인 19:55 여기까지는 정상적으로 진행됩니다. 쿠키에서 "authjs.session-token" 확인이 가능합니다. import NextAuth from "next-auth"; import { PrismaAdapter } from "@auth/prisma-adapter"; import { prisma } from "@/prisma"; import CredentialsProvider from "next-auth/providers/credentials"; import { comparePassword } from "@/lib/password-utils"; import * as jwt from "jsonwebtoken"; import { JWT } from "next-auth/jwt"; export const { handlers, auth, signIn, signOut } = NextAuth({ useSecureCookies: process.env.NODE_ENV === "production", trustHost: true, adapter: PrismaAdapter(prisma), secret: process.env.AUTH_SECRET, providers: [ CredentialsProvider({ name: "credentials", credentials: { email: { label: "이메일", type: "email", placeholder: "이메일 입력", }, password: { label: "비밀번호", type: "password", }, }, async authorize(credentials) { // 1. 모든 값들이 정상적으로 들어왔는가? if (!credentials || !credentials.email || !credentials.password) { throw new Error("이메일과 비밀번호를 입력해주세요."); } // 2. DB에서 유저를 찾기 const user = await prisma.user.findUnique({ where: { email: credentials.email as string, }, }); if (!user) { throw new Error("존재하지 않는 이메일입니다."); } // 3. 비밀번호 일치 여부 확인 const passwordMatch = comparePassword( credentials.password as string, user.hashedPassword as string ); if (!passwordMatch) { throw new Error("비밀번호가 일치하지 않습니다."); } return user; }, }), ], session: { strategy: "jwt", }, jwt: { encode: async ({ token, secret }) => { return jwt.sign(token as jwt.JwtPayload, secret as string); }, decode: async ({ token, secret }) => { return jwt.verify(token as string, secret as string) as JWT; }, }, pages: {}, callbacks: {}, }); FE 추가분 /frontend/auth.ts // ... 중략 import * as jwt from "jsonwebtoken"; import { JWT } from "next-auth/jwt"; export const { handlers, auth, signIn, signOut } = NextAuth({ // ...중략 jwt: { encode: async ({ token, secret }) => { return jwt.sign(token as jwt.JwtPayload, secret as string); }, decode: async ({ token, secret }) => { return jwt.verify(token as string, secret as string) as JWT; }, }, // ... 중략 }) pnpm add jsonwebtoken pnpm add -D @types/jsonwebtoken GET /api/auth/csrf 200 in 47ms POST /api/auth/callback/credentials? 200 in 114ms [auth][error] JWTSessionError: Read more at https://errors.authjs.dev#jwtsessionerror [auth][cause]: Error: The edge runtime does not support Node.js 'crypto' module. Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime at Object.get (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\_6e5868ec._.js:62:41) at C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\node_modules__pnpm_d2b00409._.js:8647:62 at getSecret (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\node_modules__pnpm_d2b00409._.js:8630:20) at push.[project]/node_modules/.pnpm/jsonwebtoken@9.0.2/node_modules/jsonwebtoken/verify.js [middleware-edge] (ecmascript).module.exports (C:\Users\svx32\OneDrive\바 탕 화면\v5\frontend\.next\server\edge\chunks\node_modules__pnpm_d2b00409._.js:8633:12) at Object.decode (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\[root-of-the-server]__273b5c62._.js:137:233) at session (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\fdcd2_@auth_core_ec592ae5._.js:4516:39) at AuthInternal (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\fdcd2_@auth_core_ec592ae5._.js:5123:269) at async Auth (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\fdcd2_@auth_core_ec592ae5._.js:5379:34) at async handleAuth (C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\node_modules__pnpm_d2b00409._.js:3913:29) at async C:\Users\svx32\OneDrive\바탕 화면\v5\frontend\.next\server\edge\chunks\_6e5868ec._.js:12505:20 [auth][details]: {} GET / 200 in 62ms --- 이 오류 메시지는 애플리케이션이 Edge Runtime 환경 에서 Node.js의 crypto 모듈을 사용하려고 시도 할 때 발생하는 JWTSessionError 입니다. 오류 상세 설명 JWTSessionError : 이는 JWT(JSON Web Token) 세션 관리 중에 문제가 발생했음을 나타냅니다. JWT는 웹 애플리케이션에서 사용자 세션을 처리하는 일반적인 방법입니다. The edge runtime does not support Node.js 'crypto' module. : 이 부분이 핵심 문제입니다. Edge Runtime (예: Next.js Edge Functions 또는 Middleware)은 빠르고 가볍게 설계된 환경입니다. 따라서 모든 Node.js API를 지원하지 않으며, 특히 암호화, 해싱, 디지털 서명 등에 사용되는 crypto 모듈을 포함하지 않습니다. JWT 작업은 이 crypto 모듈에 크게 의존합니다. 스택 트레이스 분석 : 오류 스택 트레이스를 보면 jsonwebtoken 패키지(특히 verify 작업 중)에서 crypto 모듈에 접근하려고 시도하며, 이 과정이 @auth/core (일반적으로 Auth.js 라이브러리)에서 호출됩니다. 이는 JWT 유효성 검사 프로세스가 crypto 모듈의 부재로 인해 실패하고 있음을 명확히 보여줍니다. 간단히 말해, 애플리케이션이 Edge Runtime이라는 제한된 서버리스 환경에서 JWT 유효성 검사(보안 관련 작업)를 수행하려고 하지만, 이 환경에는 해당 작업을 위한 필수 도구( crypto 모듈)가 없기 때문에 오류가 발생하는 것입니다. 해결 방법 (일반적인 접근) 이 문제를 해결하기 위해서는 주로 다음 방법들을 고려할 수 있습니다: JWT 관련 작업을 Edge Runtime 외부로 이동 : JWT 유효성 검사와 같이 crypto 모듈이 필요한 작업은 Edge Runtime이 아닌 일반적인 Node.js 서버 환경 (예: Next.js의 표준 API 라우트)에서 수행하도록 변경해야 합니다. 인증 라이브러리 설정 변경 : 사용하고 있는 인증 라이브러리(Auth.js)의 세션 전략을 변경하여 Edge Runtime 컨텍스트에서 crypto 모듈에 의존하지 않도록 구성해야 합니다. 예를 들어, JWT 기반 세션 대신 데이터베이스 세션과 같은 다른 세션 관리 방식을 고려할 수 있습니다. AUTH_SECRET 확인 : 직접적인 원인은 아니지만, AUTH_SECRET 환경 변수가 올바르게 설정되어 있고, 사용 중인 환경에 맞게 JWT를 안전하게 처리하는지 확인하는 것도 중요합니다. 어떻게 해결해야하나요??

  • aws
  • docker
  • next.js
  • nestjs
  • prisma
svx327 댓글 3 좋아요 0 조회수 194

과제를 위한 초기세팅

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요 과제를 하나씩 만들고있는데 4일차 과제인 api만들기를 하려고합니다! 그전까지는 위처럼 기존 강의 초기세팅 된곳에 hw폴더를 만들어서 하고있는데 이렇게 말고 강의초반에 배운대로 spring.io에서 초기세팅을 새로해서 과제를 위한 스프링부트 프로젝트를 새로 만들고싶은데요..! 혹시 현재 강의 초기세팅과 같이 하려면 어떻게해야될지 알려주실 수 있으신가요? 1~2강 초기세팅 강의에서 spring.io로 처음부터 만드는걸 배울때 자바나 스프링부트 버전설정이런건 설명이 있었는데 그다음 의존성 이런건 나중에 설명이 나온다했던거같아서 정확히 모르겠습니다. 강의에 혹시 있다면 어디를 참고하면 될지만이라도 알려주시면 감사드리겠습니다!!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
backendgoat0915 댓글 2 좋아요 1 조회수 81

검증 대기중

미해결

비전공자도 이해할 수 있는 AWS 입문/실전

강의중에 도메인의 주인인지 확인하는 절차를 설명해 주시는 부분이 있는데 그게 Route53에서 레코드 생성 버튼을 누르고 레코드를 생성하면 그 절차가 내부적으로 이루어지는건가요?

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
Cola 댓글 2 좋아요 0 조회수 242

질문있습니다.

해결됨

비전공자도 이해할 수 있는 AWS 입문/실전

저는 스프링 부트로 제 프로젝트를 인스턴스에 배포해 공부중입니다. 선생님 health check api는 app.js로 자바스크립트로 된것같은데 저는 제 스프링부트 프로젝트에 @RestController public class Health { @GetMapping("/health") public ResponseEntity health() { return ResponseEntity.status(HttpStatus.OK).body("Success health check"); } } 이런식으로 추가하려고합니다. 이렇게 진행해도 똑같은건가요? 그리고 elb가 로드벨런서 역할도한다고하는데 실습중에 대상그룹을 설정할때 인스턴스가 2개있어야 로드벨런싱을 할수있는거아닌가요?실습에선 ec2 인스턴스가 하나만있으면 로드밸런싱을 못하고 그 하나의 인스턴스에만 트래픽이가는건가요?

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
임다정 댓글 2 좋아요 1 조회수 69

docker-compose down 안되는 현상

미해결

Do It! 장고+부트스트랩: 파이썬 웹개발의 정석

안녕하세요. docker-compose down시 계속 permission denined가 뜹니다. 우선 저는 가상머신 os:ubuntu에서 프로젝트를 진행중이며, sudo 붙여서 종료 시도, sudo docker kill 로도 강제 종료를 시도했지만 permission denined이라 다 실패하였습니다. 최후의 수단으로 docker설치 삭제 후, 재설치도 해보았지만 안타깝게도 실패하였습니다. 하여 container를 종료하려고 할 때마다 가상머신 종료하고 다시 들어가야하는 매우 불편하고도 불운한 상황에 처해있습니다. groups를 통해 docker가 있는 것도 확인하였습니다. 도저히 왜 안되는지 모르겠습니다. 도움이 절실합니다... 감사합니다.ㅠ

  • HTML/CSS
  • javascript
  • python
  • django
  • bootstrap
  • aws
  • docker
  • tdd
Bockchi Blood 댓글 2 좋아요 0 조회수 241

MAS 환경에서 Feign Client 라이브러리를 이용해 HTTP 통신 발생시 에 대한 질문 있습니다.

해결됨

eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)

공유해주신 API Gateway 아키텍처를 보면 Order 서비스가 Product 서비스에게 해당 상품 수량 어느정도인지 요청시 Order 서비스는 유레카에게 Product 서비스 위치를 질의 한다. 유레카에 등록된 Product 서비스 위치 정보를 Order 서비스에게 응답한다. Order 서비스는 Product 서비스에게 실질적으로 상품 수량 GET 요청 한다. 제가 알고 있는 일반적으로 (MAS X) 모놀리식 구조에서 Feign Client 를 사용시 유레카를 사용 하지 않는 상황에서 특정 서버에게 요청시 곧바로 해당 서버에게 요청을 했었는데요. (3 Way Handshake 생략) 그런데 @FeignClient(name = "product-service", url="http://product-service") public interface ProductFeign { } 이렇게 FeignClient 어노테이션에서 name 을 특정 서버 어플리케이션 이름으로 지정하게 된다면 알아서 유레카에게 질의하고 응답 받아서 Product 서비스에게 요청해서 총 HTTP 요청이 2번 일어 난다고 보면 되는건가요? 일단 비지니스 로직단에서는 HTTP 요청이 2번 일어난다(유레카 서버에게 호출 하고 그 다음 실질적은 요청하고자 하는 서버에게 다시 요청) 라고 로직상에서는 안보여서요. 이부분은 내부 로직(Feign client 라이브러리 내부 로직?? 이라고 해야 할까요?..)에서 처리된거라서 눈에 안보이는 부분인지 알고 싶습니다.

  • aws
  • docker
  • kubernetes
  • github-actions
  • argocd
리나 댓글 1 좋아요 0 조회수 128

CI/CD 자동화 배포 문제

미해결

비전공자도 이해할 수 있는 CI/CD 입문·실전

강사님이 알려주신 대로 개인프로젝트 CI/CD 구축 방법-2 이거에서 하는데 자꾸 위와 같은 에러가 뜨는데 뭐가 문제인지 모르겠습니다.

  • aws
  • docker
  • ci/cd
  • github-actions
  • aws-code-deploy
  • infrastructure
  • aws-ec2
KMC 댓글 2 좋아요 0 조회수 101

(실습)Amazon RDS 접속과 인증 실습 질문드립니다.

미해결

쉽게 설명하는 AWS 기초 강의

영상을 보면서 실습을 따라하던 도중 Cloudshell을 이용해서 토큰을 받은 후 Workbench를 이용하여 접속을 할 때 username : testuser, password에 부여받은 토큰을 붙여넣기 했습니다. 이후 Test connection을 하면 영상에서는 Connect가 되었지만, Access denied가 출력되면서 Connect가 실패하는 것을 확인할 수 있습니다. 이런 경우 어떤 부분을 봐야할까요?

  • aws
  • aws-vpc
  • aws-rds
  • aws-ec2
  • aws-s3
댓글 3 좋아요 0 조회수 188

섹션1 실습7 질문입니다.

해결됨

비전공자도 이해할 수 있는 AWS 입문/실전

첫번쨰로 Express서버란 node.js로만든 프로젝트를 말씀하시는건가요? 그 프로젝트를 저희가 만든 인스턴스에 배포하는 과정이 실습7인건가요? 두번쨰 저는 스프링부트로 실습하는중인데 그럼 실습7은 건너띄고 실습 7-2 스프링부트로 ec2에 배포하기만 봐도되나요?

  • aws
  • aws-elb
  • aws-rds
  • ec2
  • s3
임다정 댓글 2 좋아요 0 조회수 75

SAA 섹션 17퀴즈 질문

미해결

AWS Certified Solutions Architect - Associate 자격증 준비하기

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요 3번 문제에서 2번 선지 -다른 AWS 계정의 두 VPC 간 통신 이것이 왜 정답인지 모르겠습니다. VPC Peering시, 다른 AWS 계정간 연결도 가능지 않나요 ?? 감사합니당

  • 네트워크
  • aws
고은비 댓글 2 좋아요 0 조회수 70

인기 태그

인프런 TOP Writers

주간 인기글