본문 바로가기

분류 전체보기178

[청하] 29. GCP 환경 구축 - SSH 키 설정 및 CI/CD 파이프라인 구성 GCP에서 서버를 운영하고 CI/CD 파이프라인을 구축할 때 SSH 키 설정이 필요하다.GCP 서버에 접속하기 위한 SSH 키를 생성 및 설정하고, CI/CD 파이프라인에서 발생한 SSH 관련 문제를 해결했다. 1. SSH 키 생성REF) Google Cloud 공식 문서 Windows 10 이상 환경에서 SSH 키를 생성하는 방법이다.명령어 프롬프트를 열고 -C 플래그와 함께 ssh-keygen 명령어를 사용하여 새 SSH 키 쌍을 만든다.ssh-keygen -t rsa -f C:\Users\{WINDOWS_USER}\.ssh\{KEY_FILENAME} -C {USERNAME} -b 2048WINDOWS_USER: Windows 머신의 사용자 이름이다.KEY_FILENAME: SSH 키 파일의 이름이다.. 2024. 10. 19.
[청하] 28. GCP 설정 (feat. GCS 설정 및 스프링부트 연동) GCP로 서버 이전 및 GCS로 스토리지 변경하게 된 이유NCP 우분투 운영체제가 지원 종료되어 클라우드 서비스를 GCP(Google Cloud Platform)로 이전하기로 결정했다.기존 NCP 환경에서 운영 중인 서버들을 GCP로 마이그레이션하고, 기존의 Object Storage 데이터도GCS(Google Cloud Storage)로 이전하는 작업을 수행했다.  1. GCP 설정 프로젝트는 팀원이 이미 생성했고, 내 계정이 IAM 으로 프로젝트에 추가되어 있다.  2. Google Cloud Storage (GCS) 설정Google Cloud Storage (GCS)는 클라우드 기반의 객체 저장소 서비스로, 여기에 기존 Object Storage 데이터를 마이그레이션할 것이다. 2.1. GCS 버킷.. 2024. 10. 19.
[청하] 27. 정책 상세 조회 기능 구현 “정책 리스트 조회”에 이어 “정책 상세 조회” 기능을 구현했다.“정책 상세 조회”에서는 각 정책의 세부 내용을 확인할 수 있다. 1. 프로젝트 구조src/main/java/com/example/withpeace/│├── domain/ # 도메인 모델 (엔티티)│ └── YouthPolicy.java # 청년 정책 엔티티│├── repository/ # 데이터 접근 계층│ └── YouthPolicyRepository.java # 게시글 레포지토리│├── dto/ # 데이터 전송 객체│ └── response/│ ├── PolicyListRe.. 2024. 10. 18.
[청하] 26. 정책 리스트 조회 기능 구현 이전에 구현한 외부 청년 정책 데이터 수집 기능을 바탕으로 저장된 정책 데이터를 조회할 수 있는 “정책 리스트 조회” 기능을 구현했다.클라이언트의 구현에 최대한 적은 리소스가 들도록 외부 정책 API를 호출하는 것과 최대한 비슷하게 구현했다. 1. 프로젝트 구조src/main/java/com/example/withpeace/│├── config/ # 설정 관련 클래스│ ├── SecurityConfig.java # Spring Security 설정│ └── WebMvcConfig.java # Web MVC 설정│├── constant/│ └── Constant.java # 상수 정의│├── domain/ # 도메인 .. 2024. 10. 18.
[청하] 25. 청년 정책 데이터 리프레시 기능 구현 이전 게시글까지 청년 정책 Open API를 연동하고, 데이터베이스에 저장하는 과정에서 스케줄러를 사용해 월요일 자정에 데이터가 리프레시 되도록 설정했다.스케줄러 이외에도 관리자가 직접 데이터를 리프레시 하는 기능을 추가하여, 임의로 리프레시가 필요하다고 판단될 때 수행할 수 있도록 했다. 1. 프로젝트 구조src/main/java/com/example/withpeace/│├── config/ # 설정 관련 클래스│ ├── SecurityConfig.java # Spring Security 설정│ └── WebMvcConfig.java # Web MVC 설정│├── domain/ # 도메인 모델 (엔티티)│ └── YouthPo.. 2024. 10. 17.
[청하] 24. 청년 정책 Open API 연동 및 데이터베이스 저장 (feat. XML 데이터 매핑, 스케줄러 적용) 기존에는 클라이언트 단에서 정책 Open API를 연동하고 조회할 수 있도록 했는데,정책 데이터를 데이터베이스에 저장하는 방식으로 변경하기로 하여 서버에서 연동 작업을 하게 되었다. 작업 내용정책 Open API 연동정책 데이터베이스 모델링정책 Open API 호출하여 데이터베이스에 저장주 1회 데이터 리셋하고 정책 Open API 호출하여 최신 데이터 저장 1. 프로젝트 구조src/main/java/com/example/withpeace/│├── domain/ # 도메인 모델 (엔티티)│ └── YouthPolicy.java # 청년 정책 엔티티│├── repository/ # 데이터 접근 계층│ └── YouthPolic.. 2024. 10. 17.
[청하] 23. 게시글 삭제 기능 - 외래키 제약 조건 수정 앱에서 게시글 삭제 시 실패하는 이슈가 발생했다. 게시글 연관 데이터(이미지, 댓글, 신고)에 대한 처리를 고려하지 못해 발생한 문제였다.게시글 삭제 시 연관 데이터를 자동으로 삭제하도록 수정했다. 1. 프로젝트 구조src/main/java/com/example/withpeace/│├── domain/ # 도메인 모델 (엔티티)│ ├── Image.java # 이미지 엔티티│ └── Post.java # 게시글 엔티티│├── repository/ # 데이터 접근 계층│ ├── ImageRepository.java # 이미지 레포지토리│ └── PostRepository.java # 게시글.. 2024. 10. 16.
반응형