목차 문제 출처 문제 설명 제한 조건 정답 문제 출처 Lv.3 미로 탈출 명령어 - JavaScript https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 n x m 격자 미로가 주어집니다. 당신은 미로의 (x, y)에서 출발해 (r, c)로 이동해서 탈출해야 합니다. 단, 미로를 탈출하는 조건이 세 가지 있습니다. 1. 격자의 바깥으로는 나갈 수 없습니다. 2. (x, y)에서 (r, c)까지 이동하는 거리가 총 k여야 합니다. 이때..
목차 문제 상황 해결 방법 문제 상황 백준 허브를 깃헙과 연동하고 프로그래머스를 풀었지만 git에 커밋이 안되는 문제를 생겼습니다. 여러 가지 검색을 해봤지만 cors 에러로 발생한 문제이며, 이거 저거 설치하고 수정해도 문제가 해결되지 않았습니다. 해결 방법 이 문제를 해결하는 것은 다행히도 그리 복잡하지 않았습니다. 문제의 핵심은 채점이 완료된 순간 커밋을 시도했던 것이었습니다. 제가 발견한 해결책은 상당히 단순했습니다. 채점이 완료된 순간, 로딩바가 완전히 끝날 때까지 기다려야 했습니다. 로딩바가 완전히 완료된 후에 커밋을 시도하니, 커밋이 깃헙에 성공적으로 반영되었습니다. 빨간 표시의 체크 버튼이 보일때까지 기다리면 그림과 같이 커밋이 잘되는 걸 확인하실 수 있습니다.
목차 문제 출처 문제 설명 제한 조건 정답 문제 출처 Lv.3 경주로 건설 - JavaScript https://school.programmers.co.kr/learn/courses/30/lessons/67259 문제 설명 건설회사의 설계사인 죠르디는 고객사로부터 자동차 경주로 건설에 필요한 견적을 의뢰받았습니다. 제공된 경주로 설계 도면에 따르면 경주로 부지는 N x N 크기의 정사각형 격자 형태이며 각 격자는 1 x 1 크기입니다. 설계 도면에는 각 격자의 칸은 0 또는 1 로 채워져 있으며, 0은 칸이 비어 있음을 1은 해당 칸이 벽으로 채워져 있음을 나타냅니다. 경주로의 출발점은 (0, 0) 칸(좌측 상단)이며, 도착점은 (N-1, N-1) 칸(우측 하단)입니다. 죠르디는 출발점인 (0, 0) 칸..
문제 상황 최근에 리액트 개발을 진행하면서 갑자기 포트 3000에서 문제가 발생하여 애플리케이션을 실행할 수 없게 되었습니다. 이 포스팅에서는 그 문제의 발생 이유와 해결 방법에 대해 상세히 알아보겠습니다. 원인 분석 다른 애플리케이션 또는 서비스가 해당 포트를 이미 사용 중일 때 이전에 종료되지 않은 동일한 애플리케이션 인스턴스가 백그라운드에서 실행 중일 때 이러한 경우 Windows 운영체제에서 Winnat 서비스 때문에 포트 충돌이 발생할 수 있습니다. ※ Winnat는 Windows에서 네트워크 주소 변환(Network Address Translation, NAT)을 제공하는 서비스입니다. 해결 방법 1. 기존 프로세스 확인 및 종료 먼저, 윈도우에서 사용 중인 포트와 관련된 프로세스를 찾으려면 ..
jsconfig.json이 필요한 이유 React 프로젝트를 진행하다 보면, 파일과 디렉토리의 구조가 복잡해지면서 상대 경로를 사용하는 것이 번거로워질 수 있습니다. 이럴 때, jsconfig.json을 설정하여 절대 경로를 사용하면 훨씬 간결하고 깔끔한 코드를 작성할 수 있습니다. 이번 글에서는 jsconfig.json 설정 과정에서 만난 작은 어려움과 그 해결 과정을 공유하고자 합니다. jsconfig.json이란? jsconfig.json은 JavaScript 프로젝트의 설정 파일입니다. 이 파일을 통해 절대 경로를 설정함으로써 파일 간의 참조가 더욱 간편해집니다. 이번 글에서는 React 프로젝트에서 이 설정 파일을 어떻게 구성하고 사용하는지 알아보겠습니다. json Copy code { "com..
문제 출처 풍선 터트리기- JavaScript https://school.programmers.co.kr/learn/courses/30/lessons/68646 문제 설명 일렬로 나열된 n개의 풍선이 있습니다. 모든 풍선에는 서로 다른 숫자가 써져 있습니다. 당신은 다음 과정을 반복하면서 풍선들을 단 1개만 남을 때까지 계속 터트리려고 합니다. 1. 임의의 인접한 두 풍선을 고른 뒤, 두 풍선 중 하나를 터트립니다. 2. 터진 풍선으로 인해 풍선들 사이에 빈 공간이 생겼다면, 빈 공간이 없도록 풍선들을 중앙으로 밀착시킵니다. 여기서 조건이 있습니다. 인접한 두 풍선 중에서 번호가 더 작은 풍선을 터트리는 행위는 최대 1번만 할 수 있습니다. 즉, 어떤 시점에서 인접한 두 풍선 중 번호가 더 작은 풍선을 ..
문제 1 Deployment를 이용해 nginx 파드를 3개 배포한 다음 컨테이너 이미지 버전을 rolling update 하고 update record 를 기록합니다. 마지막으로 컨테이너 이미지를 previous version 으로 roll back 합니다. - pod name : eshop-payment - image : nginx - image version : 1.16 - update image version : 1.17 - label : app=payment, environment=production 문제 풀이 - pod name : eshop-payment - image : nginx - image version : 1.16 - update image version : 1.17 - label ..
Rolling Update 동작중인 애플리케이션의 서비스 중단 없이 점진적으로 pod 업데이트 Rolling Update 사용방법 kubectl set image deployment = -- record Rollback Rollback : 동작중인 애플리케이션의 서비스 중단 없이 이전 버전으로 되돌리기 Rollback 사용방법 kubectl rollout history deployment kubectl rollout undo deployment // 특정위치로 Rollback kubectl rollout undo deployment --to-revision=NUMBER
문제 1 a webserver 라는 이름으로 Deployment를 생성하시오. - Name : webserver - 2 replicas - labels: app-env_stage=dev - container name : webserver - container image : nginx:1.14 문제 풀이 // kubectl run 은 pod 관련, create 은 deployment kubectl create deployment webserver --image=nginx:1.14 --replicas=2 --dry-run=client -o yaml > webserver.yaml vi webserver.yaml apiVersion: apps/v1 kind: Deployment metadata: name: we..
Deployment 쿠버네티스(Kubernetes)의 Deployment는 애플리케이션의 상태를 선언적으로 관리하고 업데이트를 자동화하기 위한 리소스입니다. Deployment를 사용하면 애플리케이션의 복제본을 여러 개 실행할 수 있고, 이를 통해 고가용성과 로드 밸런싱을 제공합니다. Pod 대신 사용하는 이유 목적 : Deployment의 주요 목적은 애플리케이션의 상태를 일관되게 유지하면서, 안정적으로 롤아웃(새 버전의 배포) 및 롤백(이전 버전으로의 복귀)을 수행하는 것입니다. ReplicaSet : Deployment는 내부적으로 ReplicaSet을 사용합니다. ReplicaSet은 지정된 수의 파드 복제본을 유지하기 위해 관리하는 리소스입니다. Deployment는 새로운 버전의 애플리케이션을..