반응형
Hot
-
Pull Requests 에 자동으로 Labels 적용하기 (2) - Pull Request Labeler Pull Request Labeler 적용 이번에는 Pull Request Labeler plugins을 사용하여, 변경된 파일 또는 디렉터리를 확인하고 자동으로 label 이 추가되도록 할 것이다. .github/workflows/labeler.yml : Pull Request Labeler 가 실행될 조건에 대한 workflows를 작성 .github/labeler.yml : 지난번에 사용한 설정 파일에 이어서 작성해도 무방 실행 조건 정의 .github/workflows/labeler.yml pull request 가 opened 또는 reopened 되었을 때, 그리고 PR에 새로운 Commit 이 Push 되었을 때 실행되도록 하기 위해 아래와 같이 코드를 작성하였다. 지난번과 다른 점이 있다면..
-
Batch processing (Batch job) 등장 배경 Batch processing 은 사용자(개발자)가 Punched card에 프로그램을 입력하는 Mainframe 컴퓨터 시대(초기의 컴퓨터는 한 번에 하나의 프로그램만 실행할 수 있었음)에 시작되었다. 이렇게 프로그래밍된 Punched card 를 사용자가 System operator 에게 제공하고, Syteme operator 는 이를 일정 순서, 시간에 맞춰 컴퓨터에 공급했다. Batch job 이 제출되면 이 job 들은 queue 대기열에 들어가고, System 은 처리 대기 중인 여러개의 작업을 시간 순서 또는 우선 순위에 따라 프로그램을 실행해 결과를 출력했다. 최근 컴퓨터가 발전하면서, Batch 의 정의와 사용은 많이 변화하였다. 최근에는 정기적으로 수행해야하는 작업을 자동화..
-
GitHub 에서 EC2 로 자동 배포(CD) 도입하기 (AWS) 자동 배포(CD) 왜 필요한가? 프로젝트를 진행 중 일정 단위의 개발이 완료된다면, 변경 내용을 실제 서버에 반영하기 위한 Deployment 를 진행하게 된다. 하지만, 이러한 Deploy 작업이 무언가 특별한 새로운 과정이 있는 것이 아니라 늘 같은 과정을 반복하는 것이기 때문에, 개발 이외에 많은 공수를 잡아먹는 작업 중 하나이다. 그리고, 실제 애플리케이션을 운영함에 있어서도 이러한 Deploy 작업을 인간이 수동으로 실시하다보면, 애플리케이션의 변경 내용과 관계없이 사람의 실수로 인한 장애가 발생하기도 한다. 이렇게 Deploy 작업에 불필요하고 비효율적으로 많은 시간을 소모한다면, 이는 유저에 대한 새로운 기능과 서비스 제공이 늦어짐을 의미한다. 그래서 이러한 문제를 해결하기 위한 노력으로 많..
New
-
Terraform Backend 에서 PoLP 실현: 로그 분석으로 필요한 권한만 적용하기 Terraform 으로 AWS Backend(S3 + DynamoDB)를 구성할 때, 무심코 AmazonS3FullAccess 같은 managed policy 를 붙이는 경우가 많다. 하지만 이는 PoLP(최소 권한 원칙) 에 위배된다. 실제 필요한 권한만 알아내 정확히 부여하는 게 보안상 적절하다.이 글에선 Terraform apply 로그를 분석해 어떤 API가 호출됐는지 추출하고, 그걸 바탕으로 정제된 IAM Policy 를 구성한 과정을 공유한다. Terraform Debug log 로 API 사용 내역 추출하기먼저 디버그 로그를 켜서, Terraform apply 실행 시, 어떤 AWS API 가 호출되는지 기록한다.$ export TF_LOG=DEBUG$ export TF_LOG_PATH=... -
Docker RUN vs ENTRYPOINT vs CMD Dockerfile 작성 시 사용되는 keyword 중, command 실행과 관련된 keyword 는 3가지가 있다. 각각의 상황에 따라 적절한 keyword 를 Dockerfile 에 작성해야 한다. RUN ENTRYPOINT CMD https://docs.docker.com/engine/reference/builder/#run https://docs.docker.com/engine/reference/builder/#entrypoint https://docs.docker.com/engine/reference/builder/#cmd https://docs.docker.com/engine/reference/builder/#understand-how-cmd-and-entrypoint-interact RUN.. -
Docker Detach vs Attach mode (Background vs Foreground) Docker 를 실행 시에는 모드를 설정하는 옵션이 2가지 있다. Detach Mode (Background 실행) docker command : start docker option : --detach / -d docker-compose options : -d Attach Mode (Foreground 실행) docker command : run docker option : --attach / -a docker-compose options : 없음 Background vs Foreground 참고자료 : https://www.baeldung.com/linux/foreground-background-process A process that connects to the terminal is called a ..
-
GitHub 에서 EC2 로 자동 배포(CD) 도입하기 (AWS) 자동 배포(CD) 왜 필요한가? 프로젝트를 진행 중 일정 단위의 개발이 완료된다면, 변경 내용을 실제 서버에 반영하기 위한 Deployment 를 진행하게 된다. 하지만, 이러한 Deploy 작업이 무언가 특별한 새로운 과정이 있는 것이 아니라 늘 같은 과정을 반복하는 것이기 때문에, 개발 이외에 많은 공수를 잡아먹는 작업 중 하나이다. 그리고, 실제 애플리케이션을 운영함에 있어서도 이러한 Deploy 작업을 인간이 수동으로 실시하다보면, 애플리케이션의 변경 내용과 관계없이 사람의 실수로 인한 장애가 발생하기도 한다. 이렇게 Deploy 작업에 불필요하고 비효율적으로 많은 시간을 소모한다면, 이는 유저에 대한 새로운 기능과 서비스 제공이 늦어짐을 의미한다. 그래서 이러한 문제를 해결하기 위한 노력으로 많..
-
2022년 재택 근무 데스크 셋업을 위해 구매한 것들 재작년 초 코로나가 유행해 대학교의 모든 수업이 온라인이 되면서 나의 취미는 데스크 셋업이 되었다. 방의 구조를 최소 2~3달에는 한 번씩 바꾸던 나였기 때문에, 올해 4월 일본에 입국해 新生活을 시작한 나에게는 재택 근무를 위한 데스크 셋업을 완벽하게 하는 것은 무엇보다 중요한 일이었다. 그리고 올해 대부분의 제품들을 새로 구매했기 때문에 "2022년 재택 근무 데스크 셋업을 위해 구매한 것들" 을 소개하고자 한다. 최근 나의 데스크 셋업 예전에는 책상에 모니터 3대를 두거나 화려한 LED 로 게이밍 느낌의 데스크 셋업을 했지만, 지금은 아래의 사진과 같은 모습이 되어있다. 짧은 데스크 셋업 경험이지만, 모든 제품을 꼼꼼히 검토하고, 가성비와 효율이 모두 좋은 물건을 구입해 사용하고 있다고 자부하고 있..
반응형