본문 바로가기

프로젝트 · 트러블 슈팅4

[플젝기록/트러블슈팅] 서버 및 DB 배포(AWS)와 CI/CD 구성 (3) 이전 포스팅에서 npm 컨테이너를 띄워서 포워딩 및 기타 NGINX의 작업을 수행했다고 했는데,이것 때문에 문제가 생긴 적이 있다.GitHub Actions를 통한 배포 자동화 시스템 상, 지정한 브랜치에 merge되는 순간 자동으로 새롭게 배포가 되는 방식이다.API 서버, 즉 애플리케이션은 새로 업데이트를 해야 하는 게 맞으니 별 문제 없다.문제는, 그 과정에서 매번 npm 컨테이너 또한 새로 빌드되고 있었다는 것이다. 1. 문제 파악처음 발견한 문제는 API 서버 컨테이너가 제대로 빌드되지 않는 것이었다.애플리케이션 자체에는 아무 문제 없고 수동으로 rerun 해주면 되긴 하지만 매번 그렇게 할거면 배포 자동화를 구축하지 않았겠지...Docker 각 컨테이너의 로그와 EC2의 로그까지 확인한 결과,.. 2025. 6. 3.
[플젝기록/트러블슈팅] 서버 및 DB 배포(AWS)와 CI/CD 구성 (2) 이전 포스팅에 기록했던 작업 이후에, 몇 가지 문제가 있었다.물론 NPM 설정 때문에 swagger가 안 뜨는 문제가 가장 머리 아팠고 오래 걸렸지만... 그건 이전 포스팅에 짧게 썼으므로 패스한다.1. SSL 확인하려고 했다가 HTST 옵션을 무심코 on했더니 npm 대시보드가 안 뜨게 된 문제Claude를 통해 해결책을 찾았다. 다음의 단계를 통해 브라우저에서 HSTS 설정을 초기화했다.주소창에 chrome://net-internals/#hsts 입력"Delete domain security policies" 섹션에서사용하는 도메인을 입력하고 "Delete" 버튼 클릭브라우저를 완전히 종료했다가 다시 실행→ 해당 도메인에 대한 HSTS 정책이 초기화되어 HTTP 접속이 가능해짐.참고로, HSTS는 H.. 2025. 5. 29.
[플젝기록/트러블슈팅] 서버 및 DB 배포(AWS)와 CI/CD 구성 (1) 가장 최근 프로젝트에서 다음의 사항을 모두 만족하는 배포를 진행했기 때문에 기록을 겸하여 남겨두는 글도메인 사용HTTPS (SSL 인증서) 사용AWS EC2 사용Docker 컨테이너 사용참고로 해당 프로젝트는 플러터 기반 모바일 앱으로, 이 플젝기록은 모바일 용 백엔드 API 서버와 DB를 구축하는 작업을 다룸. 단계가 정리된 글은 아니고, 당시의 진행과정을 그대로 기록해둔 글이라 가이드라인 보다는 흐름을 전체적으로 훑어보는 참고용으로 쓸 것. 사진은... 노션에는 있는데 따로 저장해둔 이미지가 아니라서 올리기 너무 불편하여 일단 스킵...(1)에서는 내가 진행했던 작업 흐름을 순서대로 나열할 거고, 이후 생긴 이슈나 보완했던 부분은 차츰 정리해서 업로드 예정사용한 툴과 흐름 요약: 가비아 - DNSzi.. 2025. 5. 27.
[플젝기록] 논리 삭제 물리 삭제(Hard Delete) / 논리 삭제(Soft Delete)물리 삭제와 논리 삭제는 데이터베이스에서 데이터를 삭제하는 두 방법이다.물리 삭제는 DELETE 명령어를 통해 실제로 데이터를 삭제하지만, 논리 삭제는 UPDATE 명령을 통해 특정 컬럼을 수정함으로써 삭제 여부를 나타내는 방식을 사용한다.# 물리 삭제 처리DELETE FROM `member` WHERE id=1;# 논리 삭제 처리와 조회UPDATE `member` SET deleted_at=curdate() WHERE id=1;SELECT * FROM `member` WHERE deleted_at IS NULL;즉, 논리 삭제는 데이터가 삭제되었음을 표시만 하는 것인데...사실 이전 플젝에서는 회원 탈퇴의 경우에만 논리 삭제를 진행하.. 2025. 5. 13.