AWS S3 + CloudFront로 SPA 배포하기 (React, Vue)
·
Setting
개요AWS 클라우드 비용 절감 작업을 진행하면서,잘 사용하지 않을 정적 리소스는 S3에 올리는 방향으로 결정했다. 따라서 SPA(Single Page Application)로 이루어진 프론트 배포도 S3로 진행하고자 했는데,간단한 작업이지만 잘못 정리된 포스팅들이 많았어서 절차를 직접 정리하고자 한다. S3먼저 AWS 콘솔에서 S3에 진입하여 버킷 만들기 버튼을 눌러서 버킷을 생성하자.버킷 이름 : 아무렇게나 생성해도 무방하다.객체 소유권 : ACL 비활성화모든 퍼블릭 액세스 차단 : 체크 (추후 CloudFront에서 버킷에 접근할 수 있는 권한을 설정하기 때문에 불필요)버킷 버전 관리 : 필요에 따라 설정이렇게 구성한 뒤 버킷을 생성하자.작성 시점 기준으로 버킷 이름만 작성한 뒤 모두 기본값으로 두고..
AWS CloudFront에서 쿼리 스트링을 포함한 도메인 리다이렉트 구성하기
·
Setting
개요AWS의 도메인 리다이렉트 예제를 찾아보면 S3의 Bucket을 활용한 리다이렉트 방법이 가장 많이 나오는데,이는 아래와 같은 단점들이 있다.S3 Bucket을 관리해야 하여 관리포인트가 늘어난다.Query Parameter의 유지가 불가능하다.1번은 큰 문제가 아닐 수 있지만,2번과 같인 Query Parameter를 상황에 따라 유지해야 하는 경우에는 사용이 불가능했다. 따라서 Query Parameter도 같이 포함하여 리다이렉트 할 수 있도록 하는 방법을 찾아보았고,이를 기록하게 되었다.아래 절차는 Route 53에 기존 도메인이 등록되어 있는 상태에서 진행해야 한다. CloudFront FunctionsS3를 활용하여 도메인 리다이렉트를 구성한다고 하더라도,기존 도메인의 HTTPS를 대응하기..
[AWS] ECS EC2 프리티어로 Spring Boot 배포하기 (with GitHub Actions)
·
Setting
개요사이드 프로젝트에서 ECS로 인프라 구성을 진행하는데,여러 Application이 Fargate로 배포되어 비용이 많이 발생하는 문제가 있었다. 비용을 효율적으로 사용하기 위해 태스크 하나를 EC2 프리티어로 사용해보고자 했고,오랜 삽질 끝에 성공적으로 마무리하여 해당 과정을 기록하게 되었다. ECS 클러스터 생성먼저 AWS에 로그인한 후 Elastic Container Service 콘솔에 들어가서 클러스터를 생성하자.인프라 섹션에서 Amazon EC2 인스턴스를 선택하고,EC2 인스턴스 유형을 프리티어가 가능한 t2.micro로 선택하자.원하는 용량에 최소 1, 최대 1을 입력하자.최소가 0이면 최초 생성되는 EC2가 ECS 클러스터 인스턴스로 등록이 되지 않는다.EC2의 보안 그룹을 설정할 때,..
Mac OS에서 Docker로 Oracle DB 띄우기
·
Setting
개요프로젝트를 진행하면서 Oracle DB로 개발을 하게 되었는데,로컬에서 따로 DB를 띄워서 테스트를 해야 하는 경우 및 Testcontainers를 도입하기 위해서 Oracle DB를 Docker로 띄워야 했다.하지만 Oracle은 M1 이상의 Mac OS를 지원하지 않아서 추가적인 조치가 필요하여 기록하게 되었다. Docker 설치먼저 Docker가 설치되어있지 않다면 공식 홈페이지에서 Docker Desktop을 설치하자.https://www.docker.com/products/docker-desktop/ Docker Desktop: The #1 Containerization Tool for Developers | DockerDocker Desktop is collaborative containe..
GitHub 잔디 잘 심기 (+ Bitbucket, GitLab 커밋 이력 연동)
·
Setting
개요 개발자로서 GitHub 잔디(기여 이력)는 꾸준함을 보여주는 상징으로 쓰인다. 그런 만큼 GitHub 잔디를 잘 나타낼 수 있도록 하는 몇 가지 설정들이 필요한데, 그런 설정들을 정리하고자 한다. 또한 자신의 프로젝트가 GitHub에 존재하지 않을 수 있는데, (Bitbucket, GitLab 등) 이러한 경우에도 해당 프로젝트들의 커밋 이력들을 GitHub에 연동하는 방법도 같이 알아보자. 1. Private contributions 설정 먼저 잔디가 많아 보이기 위해서는 private 한 기여들에 대해서도 잔디가 표시되어야 한다. 자신의 GitHub 홈에서 아래 사진에 표시된 Private contributions 버튼을 클릭하여 설정을 변경하자. 해당 설정을 적용하게 되면 아래와 같이 priv..
Gmail에 도메인 DKIM 설정하기 with AWS Route 53
·
Setting
개요업무 중에 PM 분의 메일이 계속 스팸 처리되는 문제가 있어 SPF를 적용하면서 추가적인 보안 조치인 DKIM까지 적용한 내용을 기록하게 되었다. SPF 설정에 대한 내용은 아래 포스팅을 참고해 주세요 :)https://hojun-dev.tistory.com/entry/Gmail에-도메인-SPF-설정하기-with-AWS-Route-53 Gmail에 도메인 SPF 설정하기 with AWS Route 53개요 업무 중에 PM 분의 메일이 계속 스팸으로 처리되고 클라이언트가 수신조차 하지 못하는 경우가 계속 발생했다. 확인해 보니 회사 메일에 SPF가 설정되지 않아서 스팸으로 처리되거나 수신hojun-dev.tistory.com DKIM이란?DKIM이란 DomainKeys Identified Mail의 약..
Gmail에 도메인 SPF 설정하기 with AWS Route 53
·
Setting
개요업무 중에 PM 분의 메일이 계속 스팸으로 처리되고 클라이언트가 수신조차 하지 못하는 경우가 계속 발생했다.확인해 보니 회사 메일에 SPF가 설정되지 않아서 스팸으로 처리되거나 수신 거부되는 것으로 확인하였고,해당 이슈를 해결한 내용을 기록하게 되었다. SPF란?SPF란 Sender Policy Framework의 약자로 스푸핑으로부터 도메인을 보호하고 발신 메일이 수신 서버에 스팸으로 표시되지 않도록 하는 표준 이메일 인증 방법이다.이메일 스푸핑이란 공격자가 이메일 주소를 사칭하여 수신자가 신뢰할 수 있는 출처에서 보낸 메시지라고 생각하도록 만드는 기법인데,수신 메일 서버는 SPF를 사용하여 내 도메인에서 전송된 것처럼 보이는 수신 메일이 내가 승인한 서버에서 전송된 것인지 확인하여 스푸핑으로부터 ..
유용한 사이트 정리
·
Setting
개요 다양한 업무를 하다 보면 여러 작업이 필요한 경우가 있다. 필자 기준 가장 유용하게 사용하는 사이트들을 정리한다. 유용한 사이트가 생기면 지속적으로 업데이트될 예정. 개발 관련 인코딩/디코딩 인코딩, 디코딩 결과가 필요한 경우 유용하게 사용할 수 있다. 엄청나게 많은 인코딩 기법의 결과를 한 눈에 볼 수 있다. https://dencode.com/ DenCode | Encoding & Decoding Online Tools Encoding and Decoding site. e.g. HTML Escape / URL Encoding / Base64 / MD5 / SHA-1 / CRC32 / and many other String, Number, DateTime, Color, Hash formats! d..