본문 바로가기

전체 글

(27)
[Spring, Redis, Infra] Redis 비밀번호 설정, RedisConnectionFailureException, Unable to connect to Redis 에러 현재 관광데이터 활용 공모전에 참가중입니다.저는 인프라, 백엔드를 맡았습니다.막바지에 다다르고 있네요 관련해서 포스팅 할게 많은데 끝나고 하겠습니다..ㅎㅎ오늘 문제는 redis 비밀번호 설정 중 빠뜨린 설정이 있어서 발생한 문제인데 전체적인 비밀번호 설정 과정을 포스팅 하는것이 더 나을것같아서 그렇게 진행하겠습니다.바쁘신 분들은 문제해결 및 Redis비밀번호 설정 구현 만 보시면 됩니다.문제문제는 Redis 비밀번호 설정 중 일어났습니다.Redis를 이용한 Cache 처리를 하면서 비밀번호 처리를 통해 보안을 강화하고자 했고 그 과정에서 에러가 발생했습니다. Docker logs를 통해 backend 컨테이너의 에러를 파악해본 상태입니다.RedisConnectionFailureException: Unab..
[Infra] npm Unable to authenicate 에러, npm ERR! code401, .npmrc 에러 현재 관광데이터 활용 공모전에 참가중입니다.저는 인프라, 백엔드를 맡았습니다.오늘은 배포 과정에서 있었던 문제에 관해 포스팅 해보겠습니다. 문제문제는 프론트엔드 프로젝트 빌드 중 일어났습니다. 배포 실패 알림이 왔고 Jenkins를 확인해 보았습니다.  보면 npm install을 하던 도중 authenticate 관련 오류가 발생한것을 확인할 수 있었습니다. 프론트엔드의 Dockerfile은 다음과 같이 작성되어 있었습니다.FROM node:18.17.1-alpine AS builder# 컨테이너 내부 작업 디렉토리 설정WORKDIR /usr/src/app# 컨테이너 내부로 package.json 파일들 복사COPY package* .# package.json 및 package-lock.json 파일에..
[Infra] Jenkins로 Slack에 알림 보내기 현재 저는 관광데이터 활용 공모전에 참가하고 있습니다.맡은 직무는 Backend와 Infra 입니다.요새 정말 많은 기술들을 공부하고 테스트 해보고 있습니다. 싱글노드로 구성된 k8s, Jenkins, Nginx 등등인데프로젝트가 끝나면 꼭 다 포스팅 해보겠습니다!배경 저희 팀원들은 Slack을 활용하여 협업 및 소통을 하고 있습니다.저는 인프라 담당인 만큼 CI/CD를 구축해야 했고 해당과정에서 Jenkins를 사용했습니다.문제는 팀원들의 push가 제대로 빌드 되었는지 팀원들에게 확인시켜줘야 한다 는 것이었습니다.이에 저는 Slack에 #배포 채널을 통해 빌드가 성공적으로 완료되었는지 알림을 보내기로 하였습니다.구현방법 1. Slack에서 Jenkins CI 설치먼저 Slack에서 Jenkins CI..
[Infra] Ngrok 사용법, 외부에서 내 로컬에 접속, local에서 Jenkins Webhooks 설정, Mac 저번 프로젝트때 인프라를 경험해보고 재밌기도 하고 해서 요새 공부를 좀 하고 있습니다.. ㅎㅎ현재 공부중인 부분은 Jenkins를 활용한 CI/CD 입니다.제가 가지고 있는 무료 인스턴스는 사양이 안좋은 관계로 로컬에서 진행을 하고있습니다.로컬에서 Jenkins container를 docker를 이용해 띄워놓고 GitHub에 올려놓은 test 프로젝트를 CI/CD 해보는 연습을 하는중입니다.잘 마무리 되면 해당 부분도 포스팅 해보겠습니다!문제 저는 현재 localhost:8080 포트에 Jenkins를 띄워놨습니다.GitHub의 Webhooks를 활용해 Jenkins에서 CI/CD를 구현하려 했지만 저는 현재 로컬에서 테스트를 진행중이고 GitHub Webhooks 설정 시 localhost로 설정할 수..
[Git] AccessToken을 포함한 Git clone 명령어 3번째 프로젝트가 성공적으로 종료되었습니다.기존의 WEB 프로젝트와 많이 다른 방식으로 진행되었고 그 중 처음 사용해보거나 의미있는 기술들을 포스팅 해보려합니다. 프로젝트는 다음과 같이 진행되었습니다. Java 17Spring Boot 3.2.5GradleReact이번 프로젝트의 주제는 초보자를 위한 인프라 플랫폼입니다.GitHub 링크 : https://github.com/o54711254/Dobie GitHub - o54711254/DobieContribute to o54711254/Dobie development by creating an account on GitHub.github.com  문제 간단한 정보를 입력 후 배포를 경험할 수 있게 하는것이 이번 프로젝트의 주제였습니다.사용자의 입력정보..
[Spring] Apache.commons.exec 사용, 외부 명령어 실행 API 만들기, Java에서 Shell 사용 3번째 프로젝트가 성공적으로 종료되었습니다.기존의 WEB 프로젝트와 많이 다른 방식으로 진행되었고 그 중 처음 사용해보거나 의미있는 기술들을 포스팅 해보려합니다. 프로젝트는 다음과 같이 진행되었습니다. Java 17Spring Boot 3.2.5GradleReact1. 목표 이번 프로젝트의 주제는 초보자를 위한 인프라 플랫폼입니다.GitHub 링크 : https://github.com/o54711254/Dobie GitHub - o54711254/DobieContribute to o54711254/Dobie development by creating an account on GitHub.github.com간단한 정보를 입력 후 배포를 경험할 수 있게 하는것이 이번 프로젝트의 주제였고 간단한 버튼 클릭만..
[Spring] CORS policy에러, 'localhost:3000' has been blocked by CORS policy 두번쨰 프로젝트가 끝이났습니다... 배운것도 많고 아쉬움도 많은 프로젝트였습니다. 프로젝트에서 겪은 문제들을 정리해보자 합니다. 먼저 프론트엔드 1명, 백엔드 3명 풀스택 2명으로 구성되어 있으며 저는 풀스택을 맡게되었습니다 프로젝트의 주제는 여행용 모임통장입니다. 다음과 같이 진행중입니다. Java 17 Spring Boot 3.2.0 Gradle React 문제 문제는 Cors에러 였습니다. 저희 개발 순서는 다음과 같습니다. 백엔드 API 개발 -> Swagger 테스트 -> 프론트에서 적용 Swagger에서는 정상작동을 확인했기에 로직의 문제 보다는 설정이나 프론트 axios가 잘못됐다고 판단하였습니다. 에러를 보니 Cors 에러가 맞는것 같습니다. 저희 프로젝트는 로그인 이후에는 JWT 토큰을 ..
[Git] 원격, 로컬 branch 삭제 시 복구 방법 현재 저는 팀원들과 두번쨰 프로젝트를 진행하고 있습니다. 프론트엔드 1명, 백엔드 3명 풀스택 2명으로 구성되어 있으며 저는 풀스택을 맡게되었습니다 프로젝트의 주제는 여행용 모임통장입니다. 다음과 같이 진행중입니다. Java 17 Spring Boot 3.2.0 Gradle React 문제 branch의 내용을 합치지 않고 원격, 로컬에서 모두 branch를 지워버렸습니다.. 저희 프로젝트의 Git 전략은 다음과 같습니다. develop-BE(백엔드), develop-FE(프론트엔드) 로 나눈 후 기능별로 feature branch를 생성하여 작업하고 develop branch로 merge 합니다. 기능 구현이 끝난 branch는 삭제 하기로 하였습니다. 여기서 문제가 발생했습니다. merge 안하고 양..