묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상
강사님, 안녕하세요. 강의 잘듣고 있습니다 강의 중 궁금해서 문의 남깁니다. git config --global creadential.helper store 후에도 비밀번호 물어보는 현상이 있는데.. 이후 실습과정에는 문제가 없는지 궁금합니다. 위 현상과 상관없이 아주 잘되는 것 확인했습니다! 강의 계속 잘듣겠습니다 감사합니다
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
질문_ 강의 순서 및 그외
현재 개인 프로젝트는 얼추 끝났습니다 예전에 AWS EC2 , RDS , GithubAction 으로 배포랑 CICD 까지 끝냈었는데 개인프로젝트가 SpringBoot thymeleaf Bootstrap MySQL 사용하고있습니다 이번에 구매하게된 강의 ELK 프로메테우스 그라파나를 사용하려면 도커가 필요한것 같은데 마침 비전공자도 이해할 수 있는 Docker 입문/실전 도 있어서 그런데 도커 강의 - > AWS & RDS -> CICD (Docker) -> 로그 프로메테우스 그라파나 순서로 들으면될까요 ? 공공 데이터를 사용해서 데이터가 90만건 정도 되는데 RDS 비용이 한달에.. 얼마가 나올까요..?
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
섹션 4 - Docker + 백엔드(Spring Boot)
pdf파일에섹션 4 - Docker + 백엔드(Spring Boot) 프로젝트에 CI/CD 적용하기이 부분이 누락되 있습니다.섹션4안 코드가 node시 사용하는 코드로 작성되있습니다. page 109 ,110
-
미해결eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
일주일동안 도메인이 DNS에 퍼지지 않고 있습니다.
route53에 레코드를 생성하고, 가비아에 도메인네임서버를 추가한지 일주일이 지났는데whatismydns 사이트에서 제 도메인을 조회해도 빨간색 X 표시만 뜹니다.어떤 조치를 취해야 할까요?
-
미해결eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
ingress_nginx.yml 질문
# ingress-controller 설치 명령어 # kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.8.1/deploy/static/provider/aws/deploy.yaml # aws lb -> ingress controller pod -> ingress -> service로의 라우팅 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: nginx-ingress namespace: honeyricecake annotations: # 여기서 "nginx"로 지정한 것은 이 Ingress가 NGINX 기반 Ingress Controller에 의해 처리된다는 의미 kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io/rewrite-target: /$1 #첫번쨰 prefix제거 spec: rules: - host: server.honeyricecake.shop # 설정하려는 도메인 이름. http: paths: # - path: / - path: /bradkim1/ #bradkim1으로 시작하는 모든 url요청을 nginx-service1로 라우팅한다는 정규표현식 pathType: Prefix backend: service: name: nginx-service port: number: 80 # - path: /bradkim2/ #bradkim2으로 시작하는 모든 url요청을 nginx-service2로 라우팅한다는 정규표현식 # pathType: Prefix # backend: # service: # name: nginx-service2 # port: # number: 80안녕하십니까 강사님. 강사님이 주신 ingress 코드에서 nginx.ingress.kubernetes.io/rewrite-target: /$1 #첫번쨰 prefix제거이 한줄이 어떻게 첫번쨰 prefix를 제거하고 스프링 백엔드로 prefix가 제거된 경로를 전달하는지 궁금하여 질문드립니다.
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
24강에서 depl_svc.yml 질문 있습니다.
depl_svc.yml을 apply 했는데 계속 pod이 CrashLoopBackOff 상태가 되어서 log를 확인해보려 했더니 exec format error가 뜹니다.현재 맥북(M2)을 사용중인데 exec format error 이 오류는 CPU 아키텍처 불일치 문제 때문이라고 하는데 어떻게 해결해야 할까요?
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
deploy.yml작성후 원격에 push불가
강의 13:20초대 나오는데로 원격에 push를 하면 ! [remote rejected] main -> main (refusing to allow a Personal Access Token to create or update workflow .github/workflows/deploy.yml without workflow scope)이런 식으로 Push 불가 멘트가 나옵니다.토큰 발급할때 workflow 권한 잘 체크했는데 push 불가입니다. 깃 액션 보안 강화로 ssh?로 접근해야 하나요? 강의대로는 cicd 불가능한 걸까요?
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
CodeDeploy 사용시 registration 요구
CodeDeploy 를 클릭했더니, 이런 문구가 뜨네요.complete your AWS registration 눌러도 콘솔 홈으로 돌아가고,credit card information 을 눌렀더니, 결제 기본 설정 창이 뜨는데, 딱히 문제될 건 없어 보여요.다른 AWS 서비스 사용할 때는 이런 문구 안 떴는데 왜 CodeDeploy만 이럴까요? ㅠㅠ
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
스프링 종료 명령어
안녕하세요 sudo fuser -k -n tcp 8080 이 명령어로 스프링 죽이시던데 실제 실무에서도 저 명령어로 스크립트를 구성하나요?
-
해결됨실전! GitHub Actions으로 CI/CD 시작하기
자료가 깨진 것 같습니다.
자료를 다운받았는데, 압축 파일 안에 아무것도 뜨지 않습니다.확인해주시고 자료를 새롭게 업로드 해주시면 감사하겠습니다
-
미해결eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
rds에 db 인스턴스 크기가 없는데 어떤 걸 선택하면 될까요?
단일 AZ DB 인스턴스 배포를 선택하면 될까요?
-
미해결실전! GitHub Actions으로 CI/CD 시작하기
강의자료 다운로드
강의자료 다운받으면 폴더가 비어있는데 어떻게 해야하는건가요?
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
openjdk:17-jdk-alpine이 docker hub에서 삭제된 거 같습니다.
ERROR: failed to build: failed to solve: openjdk:17-jdk-alpine: failed to resolve source metadata for docker.io/library/openjdk:17-jdk-alpine: docker.io/library/openjdk:17-jdk-alpine: not found FROM eclipse-temurin:17-jdk-alpine AS stage1 <- eclipse jdk로 수정 후 정상 작동하였습니다.
-
미해결Master Git & GitHub: Complete Version Control & Collaboration Bootcamp for Developers
강의가 잘못되었어요..
이강의 git강의가 아니라 c기초강의네요..수정바랍니다.
-
미해결Master Git & GitHub: Complete Version Control & Collaboration Bootcamp for Developers
강의 제목과 실제 강의 내용이 왜 다른거죠?
이거 깃 강의맞아요?
-
해결됨개발자를 위한 쉬운 도커
쿠버네티스 강의 언제 나오나요..
11월 초에 나온다고 하셔서 기다리고 있습니다.아직 완강하지 않았더라도 연재식으로라도 강의 올려주셨으면 좋겠어요
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
초기 클러스터 생성시 나타나는 오류
초기 클러스터 생성시 CoreDNS 와 kube-proxy 추가가 안되는데생성할때 제가 놓친부분이 있나하여 문의드립니다. 쿠버네티스 버전은 현재 1.34인데 강의와 같이 1.32로 낮춰서 생성했는데어디서 잘못된건가 싶습니다. POD에서 Service로 통신 확인하는 과정에서 오류가 발생하여gpt에 물어보니 해당 기능이 생성되지 않아서 나타나는 문제라고 하는데~현재는 노드그룹과 클러스터는 삭제해놓고 다시 생성하려고 하는데어떤것을 확인하면서 생성하면 좋을까요?
-
해결됨비전공자도 이해할 수 있는 CI/CD 입문·실전
RAM & 스왑메모리 폭증하는 문제
안녕하세요! 강의 늘 잘 듣고 있습니다! CI/CD 배포하다가 서버가 자꾸 죽어서 스왑 메모리까지 도입을 했는데도 비정상적으로 RAM과 스왑메모리가 꽉 차는 이슈가 있는데 도저히 어떻게 해결해야할 지 몰라서 이렇게 질문 남깁니다! 서버 인프라 환경 ELB - EC2(t3.small, EBS: 30GiB)EC2 내부 : Docker 기반 Spring Boot + MySQL 8.0 + Redis문제 상황 어디가 구체적으로 문제인지 몰라서 그냥 구구절절 다 설명드릴게요.처음부터 CI/CD가 안된건 아닙니다. 원래 잘 됐었는데요.인증 도메인(일반/소셜 로그인) 정상 작동하는거 확인하고 push 해서 배포완료 후 docker-compose.yml 수정해서 push 하고나니까 갑자기 CICD 할때마다 서버가 다운되는 문제를 발견했습니다. yml 파일을 바꾸게 된 경위는, 토큰 받아오는 과정에서 에러 뜨는거 보고 docker-compose.yml에 redis 관련 환경변수를 등록하는걸 깜빡했구나 싶어서 그거 추가한게 다 입니다. 이게 전혀 문제가 안될텐데 이상하게 이 시점 이후로 계속 문제가 터져서 좀 난감합니다. 애플리케이션이래봤자 아직 인증도메인 & 유저 간단한 CRUD가 전부라서 무거울게 없기 때문에 t3.small로도 충분할거라 생각했지만, 혹시나 하는 마음에 t3.medium으로 scale up을 해봤습니다.그랬더니 이번엔 RAM 4GB와 Swap Memory를 5.9GB 까지 잡아먹는 비정상적인 현상이 계속 반복되더라구요. 혹시 한꺼번에 docker build를 해서 그런가 싶어서 container 별로 나눠서 빌드시키고 각 단계마다 sleep을 줘봤는데도 결과는 똑같았습니다. 아래가 이제 t3.small (Swap 4GB 설정)이구요 이게 t3.medium (Swap 6GB)입니다. (위와 로직이 좀 달라요. 근데 이러나 저러나 결과는 똑같아서..) 배포 관련 파일대상 : deploy.yml, docker-compose.yml, Dockerfile 글자 수 제한 이슈로 노션에다가 코드 올렸습니다.https://hooby.notion.site/CICD-OOM-2a6f6c063f3e805ba105d78284365fbe?source=copy_link 질문 혹시 제 deploy.yml이나 docker-compose.yml 에 문제가 있나요? 메모리 80% 이상 차지하는게 전부 Docker 관련 프로세스여서요. Update 2: 테스트 결과에 따라 하단의 질문들이 원인이 아니라는게 검증됨아니면.. t3.small이 docker 기반 Spring Boot + MySQL + Redis를 빌드 못할 수준인가요? (아닐 것 같긴해요.) 아니면 제 인증 구현 방식에 문제가 있어서 저럴 수도 있는건가요? Redis 기반으로 Token에 블랙리스트 설정하고, 클라이언트한테 쿠키로 토큰 심어서 내보내는 방식인데, 혹시 이게 문제가 될 수도 있는건가요? 근데 로컬에서 redis 랑 스프링부트 가동하고 htop으로 메모리 변화를 봤을 땐 문제 없어보이긴 했습니다.긴 글 읽어주셔서 감사합니다. Update 1: EC2에 직접 실행해본 결과 EC2에서 docker-compose.yml을 그 안에다가 직접 만들어서 mysql, redis만 띄우고Spring Boot는 클론해서 환경변수 직접 세팅해주고 실행해봤습니다. 이는 혹시나 혹시나 애플리케이션이 너무 비정상적으로 설계되서 메모리를 많이 잡아먹진 않을까 하는 우려에 임시로 이렇게 세팅해뒀습니다.결과적으로 잘 돌아갑니다. 메모리가 1.36GB 정도 잡히긴 하지만...? 그래도 redis + mysql + spring boot 다 돌렸을 때 이정도고 Swap 메모리 있으니까 괜찮지 않을까 하는 판단 중입니다. (아니면 호되게 지적해주세요) 하단은 임시로 세팅하기 위한 docker-compose.yml 입니다.https://hooby.notion.site/CICD-OOM-2a6f6c063f3e805ba105d78284365fbe?source=copy_link한번 이것도 CI/CD로 돌려봐야겠긴 한데, 우선 문제가 됐던 deploy.yml과 docker-compose.yml에서 어떤 문제가 있었길래 저런 사태가 발생했던건지 알고싶습니다.Update 2: 우선 대안으로 SCP 활용 강의에서 초기 프로젝트에 좋다고 했던 방법대로 해결했습니다. CICD 과정에서 메모리는 900MB 미만 수준에서 안정적으로 돌았습니다. 근데 제가 원했던 설계는 Docker로 Spring Boot + MySQL + Redis 일원화였기 때문에 개발 완료되는대로 다시 찾아봐야겠습니다.https://hooby.notion.site/Server-Infra-Setup-Remodeling-2a8f6c063f3e808a8674fbc2a62cdd22?source=copy_link
-
미해결실전! GitHub Actions으로 CI/CD 시작하기
로드밸런서 연결 실패
배포 슬랙연동까지 잘 됬는데, 마지막, 로드밸런서 DNS연결이 안됩니다.node version, port 등을 수정 했습니다.여러번 시도 해봤으나 잘 안되네요. 궁금합니다. FROM node:22-alpine WORKDIR /app COPY myapp/package*.json ./ RUN npm install COPY myapp/ ./ EXPOSE 3000 CMD ["npm", "run", "preview", "--", "--host", "0.0.0.0", "--port", "5173"]{ "name": "myapp", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "build": "vite build", "lint": "eslint .", "preview": "vite preview", "start": "vite preview --host 0.0.0.0 --port 5173" }, "dependencies": { "react": "^19.1.1", "react-dom": "^19.1.1" }, "devDependencies": { "@eslint/js": "^9.36.0", "@types/react": "^19.1.16", "@types/react-dom": "^19.1.9", "@vitejs/plugin-react": "^5.0.4", "eslint": "^9.36.0", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.22", "globals": "^16.4.0", "vite": "npm:rolldown-vite@7.1.14" }, "overrides": { "vite": "npm:rolldown-vite@7.1.14" } }
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
3강 spting 빌드환경에서 mysql 부분 질문있습니다.
intelilJ 에서 어플리케이션 실행시 application.yml 프로파일에 default 부분이 깃허브에 올라온 파일에는 prod로 되어있고 그대로 실행하면 mysql에서 ordersystem 테이블 생성이 정상적으로 되지 않아서 강의를 상세하게 보니 코드부분에 local로 실행을 시키셔서 그것을 바꾸고 실행하니 테이블 안에 member , ordering , product는 생성되었는데 포스트맨에서 로그인 테스트시 임의로 만든 이메일 계정 조회시 404가 뜨는데 제가 어느부분을 놓쳐서 정상적으로 작동이 안되는걸까요?그부분 상세하게 설명 부탁드리겠습니다.