본문 바로가기
관리자

분류 전체보기

(960)
[비공개] Weekly Report - 24/01/08~23/01/14, 1296일차 보호되어 있는 글입니다.
AWS ECR -> ECS 배포(VPC, 서브넷, NAT, ASG, 로드밸런서 등 전부!) 기초 개요 Ref.)https://blog.doctor-cha.com/ecs-in-depth AWS ECS를 이용하여 애플리케이션을 배포하는 방법을 기록해둔다. 이전에 PROD 및 DEV 환경별로 구분하고, CI/CD를 통해 자동으로 배포되도록 하기 위해서 여러 과정들을 거쳤다. ECR로 Docker Image 옮기기 AWS Credential(AcceesKey, SecretKey), github Actions - ECR CI 설정하기 S3 이미지 업로드 구현, Profile 설정 및 불러오기, Swagger 이미지 업로드(multipart) 코틀린 logback 환경 분리, validated 검증, exception 처리, CD 적용 이 글에서 다룰 요소들 네트워크: VPC, 서브넷(서브네팅), 로드밸런서,..
[비공개] Weekly Report - 24/01/01~24/01/07, 1289일차 보호되어 있는 글입니다.
Django nested Serializer update 시 선언되지 않은 field 문제 1. 문제점 부모 - 자식의 구조를 갖는 Nested된 Serializer 구조를 사용했는데, update 메서드를 Django에서 지원하지 않는다고 하면서 아래 같은 에러 메시지가 뜬다. AssertionError: The `.update()` method does not support writable nested fields by default. Write an explicit `.update()` method for serializer `...`, or set `read_only=True` on nested serializer fields. 2. 해결 방안 필드를 사용할 때 반드시 Model에서 역참조로 related_name 값으로 정의한 이름으로 사용해주어야 한다. School : People ..
[비공개] Weekly Report - 23/12/25~23/12/31, 1282일차 보호되어 있는 글입니다.
mysql dump(docker instance) local에서 docker instance를 통해 mysql을 구동하여 사용하고 있는 경우, dump 방법 macOS 기준, DataGrip 활용 1. terminal에서 mysqlworkbench 캐스크로 설치 $ brew install --cask mysqlworkbench -> 일반 mysql을 brew install로 local에 설치해버리면, 기존 docker instance로 떠있는 mysql 설정을 DataGrip이 참고하던게, local용 mysql 설정을 참조하면서 권한이 밀리는 것 같음. Access Denied가 뜸! 이럴 땐 brew services stop mysql로 local로 설치된 mysql을 중단시켜버리고 docker로 실행하는 애플리케이션의 mysql container가..
코틀린 logback 환경 분리, validated 검증, exception 처리, CD 적용 1. 코틀린 logback 환경 분리 라이브러리 import implementation("org.springframework.boot:spring-boot-starter-logging:3.1.5") resources/ 하위에 logback-spring.xml 파일을 만든다. 반드시 이 이름이여야한다. slack에 메시지를 보내는 설정을 포함했다. 로 환경을 구분할 수 있다. timestamp, property, appender, root 등의 logback 문법을 따른다. %d %-5level %logger{35} - %msg%n ${SLACK_WEBHOOK_URI} %d{yyyy-MM-dd HH:mm:ss.SSS} %msg %n ...-${HOSTNAME} ... true %d %-5level %log..
스프링부트: 시큐리티- 회원가입, 로그인 기능 추가하기, swagger 로그인 하기, @ControllerAdvice 스프링부트 - 코틀린 - 스프링 시큐리티를 사용해서 회원가입, 로그인 기능을 구현한 내용을 기록해둔다. 상세한 내용들은 워딩만 알면 구글링을 하든 GPT에게 물어보든 얼마든지 알 수 있다. 여기서는 전체적인 개념과 작동원리가 어떻게 되는지 개략적으로 살펴본다. 1. 스프링 시큐리티 회원가입, 로그인 기능 추가 라이브러리 상기 언급한 스택에서 기본적인 라이브러리는 설치한다. spring-security는 3.1.5 버전을 사용했다. implementation("org.springframework.boot:spring-boot-starter-security:3.1.5") 목표 JWT 토큰을 활용한 회원가입/로그인 처리를 한다. Refresh 토큰은 처리하지 않는다. 나중에 migration 해도 된다. Ro..