🎯 컨테이너 환경 VS 직접 설치EC2 운영환경에서 ElasticSearch 를 사용하기 위해서는 크게 두가지 방법을 선택할 수 있습니다. Docker 컨테이너로 띄우는 방법과 EC2 에 직접 설치 하는 방법이 있습니다. 각각의 방법에는 분명한 장단점이 존재합니다. 컨테이너로 한번에 관리하면 여러 환경에서 쉽게 배포가 가능하고, 버전 관리또한 편리합니다. 뿐만 아니라 설치하고 삭제하는 과정도 비교적 간단하죠. 하지만 저는 EC2에 직접 설치하는 방법을 선택했습니다. 일단 가장큰 이유는 CPU 성능 때문입니다. 저는 가난한 취준생이기 때문에 좋은 EC2 를 사용하기 두렵습니다. 안 그래도 Docker Compose 에서 총 3개의 서버를 일괄적으로 실행시키기 때문에 ElasticSearch 까지 한번에 ..
Devops

🎯 GitHub Container Registry 란 무엇일까 ? GitHub Container Registry 은 Github 에서 제공하는 Docker Hub 와 같은 기능입니다. 즉, Docker Image 를 push 해서 저장하고 pull 받아 사용할 수 있습니다. 그렇다면 왜 이번 프로젝트에서 Docker Hub 를 사용하지 않고 GitHub Container Registry 사용을 결정했을까? 이유는 다음과 같습니다. 1.DockerHub 무료 버전에서는 private Image 를 하나만 올릴 수 있다.2.GitHub Actions 과의 통합이 쉽게 설정 가능하다.3.Github Container Registry 의 Github 기반의 프로젝트에서 이미 관리와 CI/CD 설계가 편리하다...

🎯 Docker Compose Redis 설정현재 진행하는 프로젝트에서 fl-api 모듈과 fl-chatting 모듈에서 공통된 Redis 를 사용하고 있습니다. 때문에 Docker Compose 로 공통된 Redis 설정을 해주고 Ec2에 배포해 사용하는 방법에 대해 설명드리고자 합니다. 먼저 프로젝트 상단에 docker-compose.yml 파일을 만들어보겠습니다. ✅ docker-compose.ymlversion: '3.8'services: fl-api: image: minseok2000/cozy-api container_name: fl-api expose: - "8080" ports: - "8080:8080" env_file: - /home..

🎯 배포 방법 그동안 프로젝트를 만들고 배포할때 직접 .jar 파일을 만들어 FileZilla 에 올리면서 Ec2 에 배포했었습니다. 정말 원초적인 방법이죠.. 그래서 이번 개인 프로젝트를 배포할때 Docker 와 Git Action 을 활용해서 CI/CD 배포 환경을 구축해볼까 합니다. 현재 진행중인 프로젝트는 멀티 모듈 구조 입니다. 즉, 하나의 서버만 배포하는 것이 아닌 여러개의 서버를 배포해야 하는 상황입니다. 총 7개의 모듈이 있고 그중 fl-api, fl-chatting 모듈을 배포할 예정입니다. 두개의 모듈에 각각 Docker 파일을 만들고 프로젝트 최상단에는 Docker Compose 파일을 만들 예정입니다. (Docker Compose 는 여러개의 Docker 이미지를 하나의 컨테이너로..