안녕하세요 섹션 18 - 82번 강의 : 배포 파이프라인 구축 후 마주하게 되는 고민들(실습) 수강 중 Jenkins 파일에 대한 질문이 있어 문의 드립니다. Jenkins 파일을 작성할 때, parameter로 PROFILE(배포환경선택)과 DOCKERHUB_USERNAME(도커허브유저명)을 설정하셨는데 하기 코드를 보시면 parameters { // 배포 환경 선택 choice(choices: ['dev', 'qa', 'prod'], name: 'PROFILE', description: '배포 환경 선택') // DockerHub 사용자명 입력 string(name: 'DOCKERHUB_USERNAME', defaultValue: '', description: 'DockerHub 사용자명을 입력하세요.') // GitHub 사용자명 입력 string(name: 'GITHUB_USERNAME', defaultValue: '', description: 'GitHub 사용자명을 입력하세요.') } stage('헬름 배포') { steps { // helm 명령 사용 - [1] 중요 데이터 암호화 관리 withCredentials([file(credentialsId: 'k8s_master_config', variable: 'KUBECONFIG')]) { sh "helm upgrade api-tester-${CLASS_NUM} ./${CLASS_NUM}/deploy/helm/api-tester -f ./${CLASS_NUM}/deploy/helm/api-tester/values-${params.PROFILE}.yaml" + " -n anotherclass-222-${params.PROFILE} --install --kubeconfig " + '${KUBECONFIG}' + // [5] Helm 부가기능 " --wait --timeout=10m" + // 최대 10분으로 설정 // [2] 잦은 배포 - versioning 무의미, 계획된 배포 - versioning 필수 " --set image.tag=${TAG}" + " --set image.repository=${DOCKERHUB_USERNAME}/api-tester" } } } PROFILE은 앞에 "params"가 붙어있고 (${params.PROFILE}), DOCKERHUB_USERNAME은 환경변수처럼 그냥 ${DOCKERHUB_USERNAME}로 사용하신 것을 볼 수 있습니다. 혹시 choice문을 사용하여 사용자가 선택하는 prarmeter의 경우 params를 붙인다던가 하는 규칙이 있는 걸까요? 위 두 개 사용 방법이 다른 것에 원인이 있는지 궁금합니다.
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 다름이 아니라 작업형 1, 3번은 답변을 적는 페이지가 따로 있는데 코드 적는 풀이도 채점을 받게 되는 건가요? 강의에서 보면 중간 print들은 지워주라는 말씀을 몇 번 하셨는데 꼭 답변 부분만 print로 출력해야 하는지, 중간 과정은 출력하면 안되는지, 또 혹시라도 답변 부분을 print로 확인 후 주석 처리 시 감점 요인인지 궁금합니다. 저는 제출한 답안만 평가 대상이라고 생각했는데 저의 풀이과정 코드도 평가 대상일까요??
이번 강의에서 NestJS는 컨테이너를 생성하면서 npm install + npm run build 로 컨테이너 내에서 애플리케이션을 빌드하는 것을 배웠습니다. 하지만 왜 Spring Boot는 컨테이너를 생성하기 전에 먼저 빌드를 하고 이 jar 파일을 컨테이너로 복사하는 것인가요? Spring Boot도 NestJS처럼 컨테이너 내에서 빌드하면 docker compose up -d --build 전에 ./gradlew clean build 도 생략할 수 있으니 더 편리하지 않을까 싶어 혹시 이유가 있는지 질문 드립니다. 감사합니다.
작업형 1, 3과 같이 문제를 풀이하는 칸과 답안을 제출하는 칸이 다르게 있는 경우 문제 풀이에서 답안 제출 칸으로 넘어가면 문제 풀이칸에서 적어놨던 코드들이 날아가더라구요.. 메모장도 문제풀이에서 적어놨던 내용이 답안 제출 칸으로 넘어가게 되면 리셋되는 것 같아서 이 경우 소문제의 답을 모두 외우고 답안 제출 칸으로 넘어가야 하나요?
지금까지는 눈으로 학습했는데, AWS ECR에 올리는 실습을 직접 하려다 보니 로컬에서 spring boot 빌드하는 환경 구성에 시간을 잡아먹고있습니다. 개발자가 아니라서 이런 개발환경은 너무 낯선데, 다른방법으로 빌드할수는 없을까요. VSCODE에서 SpringBoot Extention Pack으로 고군분투해봐도 시간만 소요될 뿐 진행되지 않아 문의드립니다.
강의 너무 감사합니다! 질문사항이 있어 문의드립니다. yml파일 내부 db: 하위 ports: 설정부분을 보면 3306:3306으로 지정되어 있습니다만, 현재 제 로컬 PC에서 mysql server가 3306포트로 실행되고 있어서 에러를 만났습니다. 그런데, 가만히 생각해보니 Flask 앱이 아닌, 제가 로컬(제 PC)에서 직접 요청을 할 일이 없는 경우라면 ports 설정이 필요한가요? 당장의 실습 환경에서 코드를 봤을 땐 호스트(로컬PC)에서 접근할 만 한 기능이 들어가 있는 것 같지는 않아서 db의 ports 설정부분을 제거하고 실행했을 땐 정상적으로 앱이 동작했습니다. 제가 생각하지 못한 필요한 경우가 있을까 궁금하여 질문드립니다. 제 로컬에서 실행되는 MySQL이 강제로 종료해도 데몬으로 등록되어있어서 계속 살아나더군요. 결국 데몬 등록을 없애고 수동으로 종료를 확인한 후에 다시 compose up --build했을 때는 됩니다. 최종적으로 질문을 정리해보자면 혹시 "호스트로 내 로컬을 지정하지 않고 (즉, ports 설정을 하지 않고) 도커 네트워크 안에서 통신하도록 구성한 상황에서 문제상황이 생긴다면 어떤 게 있을까요?" 정도 인 것 같습니다.
7회기출 풀면서,랜덤포레스트회귀로 풀었는데. R2값이 마이너스라고 놀랐고. 아래는 random_state 설정별 결과값인데, 0이 더 좋은 결과를 낸 것이라고 보면 되는건가요? (R2값을 구글 제미나이에 물어보니, 심각한 문제라고 설명해주긴 하는데. 무시해도 되는건지..) random_state=0 으로 하면. R2값 : -0.10286 RMSE : 385,935 이고. random_state=42으로 하면. R2값 : -0.05894 RMSE : 400,843 입니다.