1. ECR이란? amazon Elastic Container Registry(Amazon ECR) 컨테이너 이미지 레지스트리 서비스AWS의 IAM 기반으로 리소스 기반 권한이 있는 개인/ 퍼블릭 저장소 지원 private 저장소와 public 저장소가 존재하는데 권한 부여하는게 더 까다로워 질까봐 public 저장소를 택했다. public ECRAWS 계정마다 public registry가 제공됨 public resitry에 image respository를 만들고 이미지를 저장image respository에 이미지를 푸시하기 전에 AWS 사용자로 public registry에 인증해야함.푸시한 이미지를 개발 시스템에서 로컬로 사용하거나 Amazon ECS 작정 정의 및 Amazon EKS 사양에서 ..
기존 구조는 MAS 구조로 아래와 같았다. 백엔드 서버만 총 6개로 스프링 서버 4개, FastApi 서버 2개로 이루어졌다.하지만 이제 프리티어 계정만으로 축소해서 배포해야한다! 그래서 아래와 같이 게이트웨이 서버를 없애고 스프링 서버는 하나로 통합하고, FastApi 서버는 2개뿐이라서 하나의 EC2로도 충분히 돌아갈 것 같아서 냅두기로 했다. Docker로 EC2에 배포하기제일 먼저 FastApi 서버를 EC2에 배포하기로 했다. 코드는 변경할 것이 거의 없었다. 초반에 잘못 설정한 포트 번호만 8001 -> 8000으로 바꿔주고, 8000 -> 8001로 바꿔줬다. EC2에서 도커 이미지를 다운 받는 방법은 1. DockerHub에서 업로드 후 다운 받는 방법과 2. ECR(Elastic Con..
클래스내에 있는 함수를 테스트하기로 했다. 이때 고민된 것은 테스트 함수를 실행할 때마다 클래스 인스턴스를 만드는 것이었다.테스트 하려는 클래스는 생성자될 때 파싱해야 할 노드를 인자로 받는다. 그러면 매 테스트마다 다른 노드를 인자로 클래스를 만들어야 했다 이때 `fixture`를 사용하면 중복 코드를 줄이고 원하는 객체를 제공할 수 있다. 'pytest.fixture' 데코레이터를 작성하면 매 테스트 함수 호출 때마다 데코레이터를 붙인 함수를 실행한다. 이때 DB와 같은 클래스를 정의하거나 사전 준비 코드를 작성하면 테스트 함수마다 작성해야하는 코드 중복을 줄일 수 있다. @pytest.fixturedef call_parser(elem_manager): # CallParser 인스턴스를 생성하는..
소마 프로젝트로 코드의 진행과정을 시각화 해주는 서비스를 만들기로 했다!우선 간단한 별찍기 로직을 시각화 먼저 해보기 했다. 목표 코드a = 8for i in range(a): print('*' * (i+1)) a = 8를 AST 트리로 변환 후 트리 출력하기import ast# 분석할 소스 코드source_code = """a = 8"""# 소스 코드를 AST로 파싱parsed_ast = ast.parse(source_code)# AST 트리를 출력def print_ast(node, level=0): print(' ' * level + ast.dump(node)) for child in ast.iter_child_nodes(node): print_ast(child, le..
지원하기우테코, 싸피 다 떨어지고 막막해서 뭘 해야될지도 몰랐을 때 소마 공고가 딱 올라왔다. 소마는 1학년 때부터 알았던 프로그램이지만 코테 때문에 당최 지원할 엄두도 안나서 지원도 안했다가 이번에 처음 지원해봤다. 서류 기간이 한달이나 돼서 맨날 써야지 써야지..하다가 일주일 전에 썼다. 문항이 2개뿐이라서 금방 썼다! 이때도 내가 반드시 소마가 되고 말겠어..!라는 마음보단 도전 해본다! 마음이였다. 소마 뿐이었지만 선발 단계부터가 무려 3단계라서 우선 1차 합격이나하고 생각하기로 했다. 서류 과정우선 서류로 합격, 불합격을 나누지 않는 것 같다. 그래도 면접 때를 대비해 성심성의껏 써야한다. 1차 코딩 테스트11월부터 본격적인 취준을 하기 시작했는데, 무엇을 해야될지 몰라서 꾸준히 했던 것이 알..