반응형
- Docker Nginx - Reverse Proxy, Load Balancing2021-11-27 13:10:52진행했던 프로젝트에서 배포시 여러개의 서버를 두어 트래픽을 분산시킬 목적으로 nginx에 loadbalancing을 사용해보았던 내용을 적어봅니다. 실제로는 EC2 서버가 한 대밖에 없어서 docker container 여러개를 띄우고 이것들을 로드 밸런싱한 내용으로 실제 회사에서 배포시 이런방식 말고 여러대의 EC2 서버를 구매해서 로드 밸런싱을 하겠지만 저는 제한된 자원으로 구현해보고자 이 방식으로 진행했습니다. 먼저 docker search로 nginx를 찾은 후 이미지를 pull로 댕겨 옵니다. 이제 nginx관련 설정을 해주겠습니다. 컨테이너를 띄우면서 내부 nginx 설정 파일을 설정해 주어야하는데 nginx 디렉토리를 만들고 default.conf파일에 nginx 설정을 해주고 볼륨 마운트를..
- Docker-Compose로 반복 컨테이너 작업 줄이기2021-11-27 11:43:32진행했던 프로젝트에서 Docker를 빈번하게 사용하는 일이 많았는데 매번 컨테이너를 직접 띄워주는게 너무 귀찮았습니다. 또 배포시 build한 Spring Application 이미지로 컨테이너를 띄울 때 replica 설정으로 한 번에 여러개를 띄우고 로드밸런싱을 적용했기 때문에 Docker-Compose를 사용하면 이런 상황에서 잦은 반복을 줄여주어 편하게 진행할 수 있었습니다. 우선 Spring Application의 이미지를 빌드하기 위해 해당 디렉토리에 DockerFile을 만들어 주어 설정을 해주었습니다. 초반에는 이런식으로 DockerFile에 빌드 스크립트를 작성해주고 docker build -t [name:tag] [dockerfile location] 이런식으로 지정하여 직접 이미지를 ..
- Jenkins CI/CD Pipeline2021-11-25 00:51:27진행하던 프로젝트 배포시 ssh로 EC2 접속해서 배포하는 방식이 너무 번거롭게 느껴져서 배포 자동화를 구축하며 Jenkins와 Docker-Compose를 사용했었는데 오늘은 Jenkins에 대해 작성해 보겠습니다. 저는 AWS 프리티어 EC2 한 대 ,, 단 한 대 이기 때문에 여기에 Docker를 이용해서 Jenkins를 구축하였습니다. 우선 EC2 서버에 접속해서 Docker로 Jenkins를 Run 해줍니다. ( 실행 방법이나 시작 과정을 설명한 좋은 글이 많기 때문에 저는 간략하게 작성했습니다.) 8080 port로 포트포워딩 하여 EC2 서버 IP의 8080 포트로 접속해서 Jenkins 관련 기본 설정을 해줍니다. 사용자 계정 관련하여 설정을 해주시고 접속을 해서 New Item으로 바로 ..
반응형