TroubleShooting & Study/Infra 6

[RabbitMQ] docker-compose 실행시 오류 해결

ec2에서 docker-compose를 사용하여 rabbitmq를 실행할 때 발생했던 오류들의 해결과정을 정리해보았다docker로 실행시킨 rabbitmq 컨테이너 로그는 "docker logs 컨테이너이름" 으로 확인할 수 있으니 확인해보자 origin - Infoserveraws ec2ubuntu 22.04.5 LTSdocker-composeversion-3RabbitMQrabbitmq: image: rabbitmq:3-management-alpine container_name: rabbitmq ports: - "5672:5672" # default - "15672:15672" # management plugin volumes: - ./.docker/rabbitmq/data..

[Docker] ERROR 1045 (28000) : Access denied for user 'root'@'localhost' 해결 방법 총 정리

해커톤 당일 12시가 넘어서 기획이 끝이 나고, 부랴부랴 aws 계정 만들고(몰랐는데 기존에 사용하던 네이버, 구글 계정을 죄다 aws 계정으로 만들었다 삭제해 둔 상태였다. 분명 몇 달 지나면 다시 사용할 수 있다고 들었는데, 이미 사용하고 있는 이메일이라고 사용 거부당했다. 그래서 구글 계정부터 새로 만든다고 한 시간을 날려먹었다. 이런 부분을 미리 확인했어야 했는데.. 나란 놈 멍청한 놈) dockerhub 계정도 만들고, github actions workflows도 작성하고, 마지막으로 ec2에 접속해서 docker-compose.yml를 작성했다. 세팅은 끝이 났고 mysql workbench에 들어가서 db 연결한 후, 열심히 으쌰으쌰 코드 작성하고 push만 하면 끝~~~~인 줄 알았는데...

[Github Actions] Test Code Build 실패 (Caused by: org.hibernate.HibernateException at DialectFactoryImpl)

현재 서비스는 Github Actions를 사용해서 CI/CD를 구성했다. 이전에는 테스트 코드를 작성하지 않았기에 '/gradlew build -x test'를 사용해서 테스트 없이 build를 진행하였는데, 이번에 테스트 코드를 간단하게 작성하면서 '/gradlew build'로 바꾸어서 빌드 단계에서 테스트까지 진행하도록 수정했다.  문제 발생 역시나 첫 try 한 build는 실패. infra는 한 번에 성공하면 infra가 아니지 ㅋㅋ..'java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate' 에러가 발생하면서 빌드에 실패했다.      원인 파악 구글링을 해본 결과 'Caused by: org.hibernate.Hi..

[GitHub Actions] 스프링 서버 ci/cd 구축하기 (feat. Docker Hub)

이번 글은 다음 링크의 연장선이라 볼 수 있다 https://kdh0518.tistory.com/entry/cicd-develop%EC%84%9C%EB%B2%84%EC%99%80-release%EC%84%9C%EB%B2%84-%EB%B6%84%EB%A6%AC [ci/cd] develop서버와 release서버 분리 현재 상황 ec2에 배포서버 1개, 배포db 1개, redis 1개, jenkins 1개 + etc = 총 6개 정도의 컨테이너가 동작중 ci/cd 과정 local에서 개발 진행 개발 사항을 PR, 이후 develop으로 merge develop이 업데이트되면 jenkin kdh0518.tistory.com 이전 글에서 내가 한 가지 크게 착각하고 있었던 부분이 있었다. 분명 내 맥북은 메모리..

[Jenkins] Jenkins jobs를 다른 Jenkins로 이동시키는 방법

최근 서버 비용을 줄이기 위해서 local과 ec2를 넘나들며 jenkins를 테스트 하다보니, 기존에 jenkins를 설정하고 다른곳에 넘어가서 새로 연결하는게 너무 귀찮았다. 그래서 어떻게 방법이 없을까 하고 찾아보다가 jenkins jobs를 다른 jenkins로 이동시키는 방법이 있기에 공유하고자 한다. 환경 : mac m1, aws ec2, docker 동작 : local docker에 설치된 jenkins를 local에 이동 -> local에서 ec2로 이동 -> ec2 docker에 설치된 jenkins로 이동 1. Local Docker에 설치된 jenkins를 Local directory로 이동 복사를 원하는 local directory에서, docker의 /var/jenkins_home..

[ci/cd] develop서버와 release서버 분리

현재 상황 ec2에 배포서버 1개, 배포db 1개, redis 1개, jenkins 1개 + etc = 총 6개 정도의 컨테이너가 동작중 ci/cd 과정 local에서 개발 진행 개발 사항을 PR, 이후 develop으로 merge develop이 업데이트되면 jenkins에서 webhook을 통해 업데이트 감지 jenkins에서 깃허브의 develop으로 ec2 도커에 image build & deploy 문제점 local에서 테스트를 통과하여도 ec2 환경에서는 장애가 발생할 수 있음 장애가 발생하면 배포 서버가 죽기 때문에, 유저의 원활한 서비스 이용이 불가능함 develop을 수정할 때마다 배포가 되기 때문에 release를 따로 운용하지를 못함 해결 방안 Develop서버와 Release서버를 ..