묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨대세는 쿠버네티스 (초급~중급편)
vagrant box add 오류
안녕하십니까?k8s 최초 설치시에 vagrant box add, vagrant up 오류 문의드립니다."vagrant box add rockylinux-repo.json", "vagrant up" 입력시 사진과 같은 오류가 발생합니다. 구글검색도 해보고, 강의 커뮤니티 타수강생 문의글을 검색해보아도 동일한 증상은 없는것같아 반나절 헤매고 있습니다.rockylinux repo 주소가 변경된거같아https://dl.rockylinux.org/vault/rocky/8.8/images/x86_64/Rocky-8-Vagrant-Vbox-8.8-20230518.0.x86_64.box 해당 URL 접속해보았더니 정상접속되고,https://vagrantcloud.com/rockylinux/boxes/8/versions/9.0.0/providers/virtualbox/unknown/vagrant.box 이 주소는 404 에러 나오고 있습니다.네트워크 연결 정상, 윈도우 호스트 이름 변경(변경전 호스트 이름에 공백이 있어서 변경해봄), VirtualBox, Vagrant 재설치도 해보았는데 계속 동일한 오류가 발생됩니다. 해결방법 문의드립니다. 감사합니다.
-
해결됨개발자를 위한 쉬운 도커
192.168.0.30을 public ip주소로 갖는 다른 host는 접근이 안되는 건가요?
같은 네트워크에 속한 두 기기 간에 사설 ip로 서로 통신이 가능한 것 같은데,사설 ip와 똑같은 공인 ip를 가진 다른 기기에는 접근은 불가능한가요? (예를 들어 강의에 나온 192.168.0.30를 공인 ip로 갖는 어떤 다른 서버에 접속이 가능한지) 사설ip에 가려져 같은 공인 ip를 갖는 기기에는 접근이 안될 것 같아서 질문드립니다!감사합니다!
-
해결됨Real MySQL 시즌 1 - Part 1
조건 없는 COUNT(*)에 대한 궁금증
안녕하세요, 강의 잘 듣고 있습니다. 강의와 책을 동시에 보면서, 학습을 하고 있습니다. 근데 강의와 도서에서 설명하는 내용에 다른점이 있는 것 같아서 질문드립니다. REAL MySQL 8.0 (2권) 중 11.4.6 COUNT() 절에서는 아래와 같이 설명되어 있습니다.MyISAM 스토리지 엔진을 사용하는 테이블은 항상 테이블의 메타 정보에 전체 레코드 건수를 관리한다. 그래서 "SELECT COUNT(*) FROM tb_table"과 같이 WHERE 조건이 없는 COUNT(*) 쿼리는 MySQL 서버가 실제 레코드 건수를 세어 보지 않아도 바로 결과를 반환할 수 있기 때문에 빠르게 처리된다.하지만, 강의 Ep.03 COUNT(*) vs COUNT(DISTINCT) 튜닝 에서는 WHERE 절 없는 COUNT(*) 는 제거 대상이라고 설명을 해주셨습니다. 책의 내용처럼 메타 정보에서 가져온다고 한다면 굳이 제거 대상이 될 것 같지는 않은데, 혹시 제가 놓친 배경이 있었을까요? 아니면 이게 뭔가 이분법적인 차원에서 접근하기에는 어려운 내용일까요?
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
for문 조건식에서 `<=` 와 `==` 질문
[질문 내용]public static void main(String[] args) { int row = 5; for (int i = 1; i <= row; i++) { for (int j = 1; j <= i; j++) { //for (int j = 1; j == i; j++) System.out.print("*"); } System.out.println(); } }위의 예제를 보면 j == i 로 코드를 입력했을 경우, 1행 * 하나만 출력이 되고 그 다음은 출력이 되지 않습니다.j == i가 될 때까지 출력해라 라는 논리구조가 적용이 되지 않는 이유가 궁금합니다.만약 j == i 일 때만 출력해라 라고 한다면 별은 5행까지 하나씩 출력이 되어야 할 것 같은데 그렇게 되지 않기도 하구요.조언 부탁드립니다!
-
해결됨Next + React Query로 SNS 서비스 만들기
server ,client 컴포넌트 랜더링 질문입니다!
안녕하세요~직접 만들어보고 비교하려고하는데 의문점이 하나 생겨서요!서버컴포넌트로 Link를 생성하고useSelectedLayoutSegment로 active클래스 처리해주려고 합니다!export default function SideBar() { const links = [ { path: "/home", pathName: "Home" }, { path: "/", pathName: "탐색하기" }, { path: "/", pathName: "쪽지" }, { path: "/", pathName: "프로필" }, ]; return ( <div className={classes.nav}> <div>logo</div> <nav> <ul> {links.map((link, idx) => { return ( <li key={`${link}-${idx}`}> <SideLink href={link.path}>{link.pathName}</SideLink> </li> ); })} </ul> </nav> <button className={classes.btn}>게시하기</button> </div> ); } interface SideLinkProps { children: ReactNode; href: string; } export default function SideLink({ children, href }: SideLinkProps) { const segment = useSelectedLayoutSegment(); const isSegment = href.slice(1); return ( <Link href={href} className={segment === isSegment ? classes.active : undefined} > {children} </Link> ); }근데 랜더링이Sidebar가 서버에서 초기 랜더링 하고client에서 class 반영한다 라고 이해하고 있는데용브라우저에서 "페이지 소스보기"를 했더니이미 class에 active가 반영된 상태로 랜더링 되어있어요캐시도 지우고 빌드해서 npm start 해봐도 "/home" path에서 소스보기 했더니 class가 반영된 상태로 서버에서 랜더링 되어옵니다.hook에 의한 할당될 class는 비워진 상태로 html를 생성하고 이후 client에서 hook을 이용한 클래스 부여가 된다고 알고 있었는데왜 서버에서 세그먼트 훅에 의한 class 처리가 되서 오는건지 궁금합니다!검색해도 명확한 답이 없어서 질문드려요!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
비전공자, 반복문 헷갈리는 이유
15:15 에서 선생님의 풀이를 통해 제가 헷갈리고 모르는게 무엇인지 찾았습니다.초기값의 경우, int a=1, b=1, sum=0 이라고 주어졌지만반복문에서 조건식에 들어가는 순간 블럭{} 내에서 변수값이 변화하는 과정(else문)에서 a 가 1일 때 sum을 0으로 주는 게 맞는지 -1로 주는 게 맞는지 헷갈립니다.저의 풀이는 다음과 같습니다.a=1, b=1, sum=0 처음엔 이렇게 시작했다가 if문의 else를 거쳐서 sum=-1로 변했기에 a=1, b=1, sum=-1 로 시작하여 문제를 풀었습니다.결과적으로,a=1, b=1, sum=-1a=2, b=3, sum=-4a=3, b=5, sum=-9a=4, b=7, sum=-16a=5, b=9, sum=-25a=6 반복문 종료운이 좋게도 해당 문제는 답이 맞다고 풀었지만 다른 기출문제의 경우는 a가 x일 때, b 값은 몇인지 구하는 과정에서 한단계씩 엇박자가 나는 바람에 틀리는 경우가 있습니다(선생님의 풀이를 보면 초기값이 sum=0이기에 당연히 여기서 시작하셨고 a=2 일 때, sum=-1이라고 계산한 것처럼요)저 나름대로 반복문을 풀이할 때, 헷갈리지 않기 위해 표형태로 값을 써내려가면서 계산할 때 변화를 짐작하는 방법으로, 다음과 같이 번호별로 하나로 묶어서 변수값의 변화를 계산했습니다.반복문 외부 초기값->for 초기화->for 조건식for 블럭{}->for 증감식->for 조건식이러면 값은 맞게 나오긴 하는데 전공자 입장에서 이렇게 생각하고 풀이하는 것이 맞는지 궁금합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
테이블 생성
엔티티를 만들면 엔티티의 형식에 맞게 테이블이 생성이 되던데 테이블 생성하는 sql을 직접 작성한 후 엔티티 코드를 작성하는 이유가 무엇인가요?
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
kafka 관련해서 궁금한 점이 있습니다..
안녕하세요. 현재 강의 너무 재밌게 듣고있습니다. 아무래도 제가 카프카에 대해 잘 모르다보니 감이 없어 이해도가 낮습니다. 조금 부족한 질문이라도 이해 부탁드립니다. ㅠㅠ 현재 강의에서 프로젝트에서 생성한 구조는 kafka source connector가 없이 kafka sink connector만 만들고 직접 kafka topic에 저장하고 이를 동기화시키는 방식이라고 이해했습니다. 혹시 제가 이해한 구조가 맞을까요? 혹시 현업에서도 source connector가 굳이 필요 없다면 위와 같은 구조로 사용해도 상관 없을까요?현재 MSA 관련 프로젝트를 준비하고있으며. DB를 서비스별로 어떻게 분리해야할지 굉장히 고민하고 있습니다. 만약 배포되는 모든 서비스가 각자 다른 db를 가지고 있는 방식으로 구성해야한다면, 동일한 도메인 내에 있는 서비스는 db를 동기화를 시켜주는 작업이 필요할 것 같은데요. 제가 테스트해본 결과 source connector쪽 db에 데이터를 삽입했을 때는 sink connector쪽 db에도 데이터가 똑같이 삽입되지만, source connector쪽 db 데이터를 삭제하거나 수정하는 경우는 반영이 안되는 것을 확인했습니다. 혹시 이런 상황에서 참고할만한 키워드나 문서가 있을까요? ㅠㅠ
-
해결됨Part2: 초중급 iOS 인스타그램 클론(SwiftUI, MVVM, Firebase, 2024)
17강 firebase로 이미지 업로드하기에서 업로드가 안됩니다~
Thread 9: Fatal error: Unexpectedly found nil while unwrapping an Optional value위와같은 오류가 뜨면서,,, 업로드가 안됩니다..
-
해결됨업무에 바로 적용할 수 있는 프리미어 프로의 모든 것
만약 프리미어 프로만 구매하고 미디어 인코더는 없어도 강의를 수강하는데 문제 없을까요?
안녕하세요. 강의 초반을 보고 프로그램 구매를 하려고하는데요 저는 편집에만 쓸거라 프리미어 프로만 구매하고 싶은데 영상에 내보내기 를 할때나 프록시 편집을 할때 미디어 인코더로 실행이 되는거 같더라구요. 혹시 프리미어 프로만 구매해도 동일하게 따라갈 수 있나요?
-
해결됨김영한의 실전 자바 - 중급 1편
Math클래스 메서드중 random,질문(추가 round 메서드도요)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 궁금증이 생겨서 질문을 남깁니다.Math 클래스중에 메서드에 있는 Math.radom()을 추적해 보니, Ranodm 클래스를 갖고 와서 쓰고 있다는 사실을 알수 있었습니다.Math클래스에 random()이라는 메서드를 집어 넣은 이유가 저가 생각 하기에는 random 이라는 것이 복잡하고, ocp원칙을 지키기 위해서, Math 클래스에 관계를 맺고 있다 라고 생각해도 될까요? 아니면 다른 이유가 있는 것인지 알고 싶습니다.추가 질문round() 메서드의 값을 예상햇을때 3.0이 나올줄 알았는데, 3이 나오고, long으로 값을 반환 한다는 것을 알 수 있었습니다.ceil(),floor() 메서드 들은 전부다 반환값이 double인데, rond() 메서드는 왜 long으로 반환하는지 알고 싶습니다.답변 부탁 드립니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
3.3)Node.js 사용하기 강의 중 npm run start 시 오류 발생
강의대로 package.json에 scripts 내 start에 경로 추가 후("node src/index.js)터미널에 npm run start 입력 시 아래와 같은 error가 발생됩니다.PS C:\Users\HOME\Desktop\oneBite-React\section03> npm run start> section03@1.0.0 start> node src/index.jsnpm error code ENOENTnpm error syscall spawn C:\Program Files\Git\bin\git.exenpm error path C:\Users\HOME\Desktop\oneBite-React\section03npm error errno -4058npm error enoent spawn C:\Program Files\Git\bin\git.exe ENOENTnpm error enoent This is related to npm not being able to find a file.npm error enoentnpm error A complete log of this run can be found in: C:\Users\HOME\AppData\Local\npm-cache\_logs\2024-07-14T05_57_50_914Z-debug-0.log
-
미해결30분 요약 강좌 시즌4 : 알잘딱깔센 GitHub
4강 8:00에서 더 이상 진행이 안됩니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요개리 폴더에서 git pull 명령어를 입력하면 작동하지 않고 다음과 같은 경고문이 뜹니다.There is no tracking information for the current branch.Please specify which branch you want to merge with.See git-pull(1) for details. git pull <remote> <branch>If you wish to set tracking information for this branch you can do so with: git branch --set-upstream-to=<remote>/<branch> main
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
API gateway에서 user service 라우팅시에 회원가입, 로그인, 그외로 나누는 이유가 궁금합니다
routes: - id: user-service # 로그인 uri: lb://USER-SERVICE predicates: - Path=/user-service/login - Method=POST filters: - RemoveRequestHeader=Cookie - RewritePath=/user-service/(?<segment>,*), /$\{segment} - id: user-service # 회원가입 uri: lb://USER-SERVICE predicates: - Path=/user-service/users - Method=POST filters: - RemoveRequestHeader=Cookie - RewritePath=/user-service/(?<segment>,*), /$\{segment} - id: user-service # 그 외 uri: lb://USER-SERVICE # ???? ?? predicates: - Path=/user-service/** - Method=GET filters: - RemoveRequestHeader=Cookie - RewritePath=/user-service/(?<segment>,*), /$\{segment} /**로만 넘겨도 될거같은데 회원가입, 로그인, 그 외 기능을 나누는 이유가 따로 있을까요 ?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
포인터 주소값이 null?
이해가 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. P의주소값이 null인데P가 a(art)랑 같다는게이해가 안가네요.주소값이 없어도 값은 가질수있다는 뜻인가요?
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
객체 타입의 얕은 복사와 깊은 복사에 대해 질문 있습니다
안녕하세요~ 2.5) 원시타입 vs 객체타입 강의의 8분 6초 쯤에 객체의 얕은 복사와 깊은 복사에 대해 설명해주시는 부분이 있는데요.중첩객체에서는 spread 연산자를 사용해서 복사를 해도 1 depth까지는 복사가 되는데, 2 depth 이상 부터는 복사되지 않는 걸로 알고 있습니다.그래서 spread 연산자를 사용한 복사를 얕은복사,JSON.stringify() 등을 이용해서 하위 중첩된 객체들까지 복사하는 것을 깊은 복사라고 하는 걸로 알고 있는데혹시 제가 잘못 알고 있는건지 궁금해서 질문남깁니다!
-
미해결실무 중심! FE 입문자를 위한 React
SuryveyPie 기획서 어디에 있나요?
제목 그대로 SurveyPie 기획서 pdf를 어디서 받아야 하는지 모르겠습니다.처음에 받은 "학습노트_리엑트기초심화.pdf" 파일에서는 디자인 가이드와 코드만 존재합니다. 기획서 어디서 받을 수 있는지 알려주시면 감사하겠습니다.
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
react query 질문입니다.
양질의 강의 잘 듣고있습니다.queryKey: [queryKeys.POST, queryKeys.GET_POSTS],쿼리키에 다음과 같이 굳이 POST를 넣어주는 이유가 그룹화 하기위함인가요? 나중에 서비스가 커질 경우 어떤 항목의 get_posts인지 구분이 힘들어질수 있어서 그런것인지 궁금합니다.만일 그렇다면 useMutateDeletePost()에서 queryClient.invalidateQueries({queryKey: [queryKeys.POST]});로 처리하면 POST관련 모든 캐시가 지워지는건가요?
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
[section08, 투두리스트] 할일 추가가 한개밖에 안되는 문제
안녕하세요 section08까지 듣고 투두리스트 복습을 하던 중 할일이 한개는 추가가 되는데 그 뒤로는 추가된 할일에 덮어쓰기가 되어 추가가 안되는 문제가 발생하는 문제가 발생하여 어제부터 해결이 안되 질문남깁니다.onCreate함수 내부에 로그를 찍어보면새롭게 저장된 데이터가 아닌 매번 기존에 3개 만들어놓은 mockData가 불러와져서 데이터가 추가되는거 까진 확인하였습니다.또한 useReducer를 사용하면 강의와 같이 정상적으로 되는데 useState를 이용하면 위와 같은 문제가 발생합니다.몬가 Context를 사용해서 이런 현상이 발생하는 것으로 추측되는데 어떤 차이 때문에 이런 현상이 발생하는지 궁금합니다. App.jsximport './App.css' import Header from "./component/Header.jsx"; import Editor from "./component/Editor.jsx"; import List from "./component/List.jsx"; import {createContext, useMemo, useRef, useState} from "react"; export const ContextStateData = createContext(); export const ContextDispatchData = createContext(); const mockData = [{ id: 0, isDone: false, content: "Study react", date: new Date().getTime() }, { id: 1, isDone: false, content: "go to bed", date: new Date().getTime() }, { id: 2, isDone: false, content: "play game", date: new Date().getTime() },]; function App() { const [todos, setTodos] = useState(mockData); const idRef = useRef(3); const onCreate = (content) => { const newTodos = { id: idRef.current++, isDone: false, content: content, date: new Date().getTime() } setTodos([newTodos, ...todos]); } const memorizedDispatch = useMemo(() => { return {onCreate} }, []); return (<div className="App"> <Header/> <ContextStateData.Provider value={todos}> <ContextDispatchData.Provider value={memorizedDispatch}> <Editor/> <List/> </ContextDispatchData.Provider> </ContextStateData.Provider> </div>) } export default App 전체 코드 깃허브 주소https://github.com/ironwhale1014/one-bite-react/tree/main/todo_list_train
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
OneToMany와 테이블 칼럼 관련 질문드립니다.
안녕하세요@Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; private String name; @Embedded private Address address; @OneToMany(mappedBy = "member") private List<Order> orders = new ArrayList<>(); } 이렇게 엔티티를 JPA 매핑을 시키면 테이블이 자동으로 생성되면서 컬럼들을 생성해주는데id, name ,address는 칼럼으로 생성되는데@OneToMany 어노테이션이 붙은 필드는왜 컬럼으로 생성이 되지 않는 것인지 궁금합니다!!