본문 바로가기

전체 글51

[Docker] 도커 + 도커 컴포즈 + Nginx + Spring boot(Local) 연동하기 이번 포스팅은 무수히 많은 삽질 후 겨우겨우 성공한… 도커 컴포즈 사용기(feat. Nginx, Spring boot)이다.추후 이 작업을 활용하여 EC2에 S3와 CodeDeploy를 사용하는 대신 Docker Hub를 사용하여 CI/CD를 사용하는 방법에 대해 포스팅하도록 하겠다.사전 작업1. application.properties → application.yml로 변경 후 yml파일 내용 수정# application.ymlspring: application: name: Liver-Server profiles: default: local  2. 성공 확인을 위한 테스트 컨트롤러 작성// TestController.javapackage com.appledeveloperacademy.Li.. 2024. 6. 26.
Nginx로 HTTPS 설정하기 지난 포스팅에 이어서 이번 포스팅은 Nginx로 Https를 설정하는 방법에 대해서 알아보겠다.Nginx로 Https 연결 순서Let’s Encrypt를 통해 ssl 인증서 발급ssl과 관련된 Nginx 설정1. Let’s Encrypt를 통해 ssl 인증서 발급1. sudo snap install --classic certbot명령어를 통해 certbot 설치2. certbot --version 명령어를 통해 제대로 설치가 됐는지 확인3. sudo certbot certonly --nginx -d {호스트.도메인}명령어를 통해 인증서 발급해당 과정에서 메일 주소, 서버 등록 승낙 여부를 추가적으로 입력한다. 2. ssl과 관련된 Nginx 설정1. sudo vi /etc/nginx/sites-avail.. 2024. 6. 18.
Route 53없이 가비아 DNS 레코드를 통해 EC2 도메인 연결 및 Nginx로 서버 배포하기 이번 포스팅은 EC2 인스턴스에 도메인을 연결하는 방법에 대해서 알아보고자 한다. 기존에는 Nginx를 사용하지 않고, Route 53(DNS)을 사용하여 호스팅 영역을 생성하고, 해당 영역에서 만들어진 레코드의 네임 서버 주소를 가비아의 네임 서버에 연결시켜 도메인을 연결했었다. 이번에는 가비아와 직접 도메인을 연결하여 AWS EC2 로드밸런서 없이 Nginx를 사용하여 로드밸런싱까지 진행해보려고 한다. 일단은 로드밸런싱까지는 양이 너무 방대하여 이번 포스팅에서는 가비아의 DNS 서버를 활용하여 도메인을 연결하는 내용만 다루도록 하겠다.(본 포스팅은 이미 EC2 인스턴스 및 탄력적 IP가 설정되어있다고 가정하고 진행한다. 혹시라도 인스턴스를 생성하는 방법을 모른다면, “https://kyxxgsoo.t.. 2024. 6. 17.
Local 개발 환경에 Https 적용시키기(with mkcert) 이번 포스팅은 Local 개발 환경에 mkcert를 통해 인증서를 발급하고 Https(443포트)를 적용시키는 방법을 다루고 있다. Https 적용 순서1. brew를 통해 mkcert 설치2. mkcert를 사용하여 인증서 생성3. application.yml 설정 및 프로젝트에 인증서 적용1. brew를 통해 mkcert 설치1. brew search mkcert를 통해 mkcert를 확인 후 brew install mkcert로 설치 2. mkcert -install 명령어를 통해 mkcert 설치 확인2. mkcert를 사용하여 SSL 인증서 생성1. 적용할 프로젝트의 “src/main/resorces” 위치로 이동(추후에 application.yml 파일을 설정할 때, classpath로 경로를.. 2024. 6. 7.
AWS EC2 & S3 & Code Deploy를 활용한 CD 지난 포스팅 “AWS EC2인스턴스에 Spring Boot 서버 배포하기”에 연결되어 CD(Code Deploy, 자동 배포)를 하기 위한 포스팅이다. 이번에도 마찬가지로 실습 위주로 진행된다.서버 배포 순서AWS에서 EC2 인스턴스 생성탄력적 IP 설정보안 그룹 설정SSH 클라이언트(iterm)으로 서버 접속SSH를 통해 EC2 인스턴스에 Spring Boot 서버 띄우기CD(Code Deploy) 순서AWS EC2에 Tag 설정AWS EC2에 IAM 설정서버에 CodeDeploy Agent 설치AWS S3 생성AWS CodeDeploy 전용 IAM 역할 생성AWS CodeDeploy Application 생성 및 배포 설정Github Actions의 사용자 권한 추가App Spec 작성배포 스크립트(.. 2024. 5. 8.
AWS EC2인스턴스에 Spring Boot 서버 배포하기 앞서 포스팅한 “Github Actions를 활용한 CI”과 마찬가지로 실습 위주의 포스팅을 진행하도록 하겠다.본 포스팅에서는 AWS의 EC2를 통해 Spring boot 서버 배포를 다룬다.(CodeDeploy에 대한 내용은 다음 포스팅에서 다루도록 하겠다.)서버 배포 순서AWS에서 EC2 인스턴스 생성탄력적 IP 설정보안 그룹 설정SSH 클라이언트(iterm)으로 서버 접속SSH를 통해 EC2 인스턴스에 Spring Boot 서버 띄우기CD(Code Deploy) 순서AWS EC2에 Tag 설정AWS EC2에 IAM 설정서버에 CodeDeploy Agent 설치AWS S3 생성AWS CodeDeploy 전용 IAM 역할 생성AWS CodeDeploy Application 생성 및 배포 설정Github.. 2024. 4. 30.