반응형 CLOUD226 react 앱 s3에 폴더별로 설치 방법(403 에러 해결) react를 build 한후에 s3 루트에 그냥 올려버리면 아주 간단하지만.. 버킷내에 폴더에 리액트를 넣어버리면 파일을 못읽어 들여서 흰화면(blank page)이 나옵니다... (오류를 보면 403이라고 뜸) package.json 파일에다가 url 경로를 입력해줘야합니다. ex) exampe.com/publish 에 페이지 를 띄우고 싶으면 example/pulish를 입력하면됩니다. 이렇게 한뒤에 안되는 경우가 있는데 보통 퍼블리셔나 프론트 개발자분들은 동적페이지에서 작업을 하기 때문에 browse route를 사용하시는데 s3의 경우 정적 페이지이므로 hashroute를 사용해줘야합니다. import에 hashrouter를 추가하고 browserouter를 hashrouter로 변경을 해줍니다... 2022. 6. 14. 하나의 S3 버킷에 여러 App(web)을 Cloudfront 에 띄우기 및 루트 설정 S3 는 100개의 버킷으로 제한되어 있어 버킷이 적을경우는 상관이 없는데 많다면 하나의 버킷에 여러 웹을 띄워놓는것이 좋아 보인다. root 페이지를 띄우려면 내부에서 설정을 할것인지 아니면 aws 서비스로 설정을 할지 선택하는데 내부설정을 해주면 어플리케이션을 올릴때마다 수정을 해줘야 하기때문에 엄청나게 번거로워진다. (물론 개발자에게 이렇게 해달라고 하면 되긴한다.) aws에서 설정을 해주면 번거롭지 않게 할수 있기 때문에 나는 이것으로 해보기로 했다. 1. origin 및 behavior 경로 설정 그래서 폴더별로 구분하여 앱을 설정을 하려고하는데 일반적인 웹 어플리케이션은 여러 파일(js,css 등등)을 참조하고 있기때문에 경로이동을 하면 작동이 되질 않는다. cloudfront의 기능인 ori.. 2022. 6. 13. Cloudfront 동작방식 cloudfront보면 origin 등록 동작 등록하여 도메인에 접속한다. origin은 위치. 동작이야 말로 cloudfront가 이용하는곳이므로 여기서 수정을 잘해야한다. origin이 다를경우 다른곳에서 같은 도메인에서 경로 추가하여 접속할수 있는데 origin이 같은경우 우선순위나 접근에 따라 바뀌어 버림... 지정하는값과 표시되는 값을 보면 될듯 https://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesCacheBehavior 배포를 만들거나 업데이트할 때 지정하는 값 - Amazon CloudFront GET, HEAD, O.. 2022. 6. 10. AWS ECS repository pull 하는 방법 (이미지 다운) 아래로 ecr 인증을 거칩니다 region에 지역 넣고 account_id에 123456789012 같은 12자리 계정 번호를 입력하시면 됩니다. aws ecr get-login-password --region [region] | docker login --username AWS --password-stdin [account_id].dkr.ecr.[region].amazonaws.com 그리고 docker pull 로 가져오면 됩니다. tag는 대소문자 구분합니다. docker pull [account_id].dkr.ecr.ap-northeast-2.amazonaws.com/[repository name:tag] - 번외 ECR repository 확인 aws ecr list-images --reposi.. 2022. 6. 8. cloudfront-s3 react browser router 작동 안할때 s3에 react를 올리고 react의 기능인 browserRouter를 사용하는데 403에러가 발생한다. oai 보안을 사용안하는경우(public 접근가능)는 에러가 발생안하고 되는것같은데(해보진않음..) 사용하는경우 browserRouter가 되지 않는다. 원인은 s3가 정적웹페이지를 지원하여 hashrouter를 사용해야한다고 한다. 그러면 browserRouter도 안되야 하는거 아닌가??? 대부분 보면 에러발생하는것을 cloudfront에서 설정할수잇는 에러페이지에서 index.html 로 넘겨버리고 잘작동하는것처럼 나와잇다. 사실 에러 난것을 index.html로 옮긴것뿐인데. https://stackoverflow.com/questions/66326106/react-router-locatio.. 2022. 5. 30. AWS 보안그룹 규칙 소스에 보안그룹 넣기 AWS 보안그룹에 소에는 다음과 같이 입력할수가 있다. 소스 또는 대상: 허용할 트래픽에 대한 소스(인바운드 규칙) 또는 대상(아웃바운드 규칙)입니다. 다음 중 하나를 지정하십시오. 단일 IPv4 주소. /32 접두사 길이를 사용해야 합니다. 예: 203.0.113.1/32. 단일 IPv6 주소. /128 접두사 길이를 사용해야 합니다. 예: 2001:db8:1234:1a00::123/128. CIDR 블록 표기법으로 표시된 IPv4 주소의 범위. 예: 203.0.113.0/24. CIDR 블록 표기법으로 표시된 IPv6 주소의 범위. 예: 2001:db8:1234:1a00::/64. 접두사 목록의 ID. 예: pl-1234abc1234abc123. 자세한 내용은 Amazon VPC 사용 설명서의 접두사.. 2022. 5. 26. AWS cloudfront S3연동 / OAI를 이용 (access denied 문제 관련 해결) 목차 1. S3 설정 페이지를 보여줄 index.html 을 하나 s3에 업로드 합니다. 그리고 속성 탭에서 정적 웹사이트 호스팅을 합니다. 아래는 이미 되어 있어서 활성화 되어있는데 원래는 비활성화입니다. 오른쪽위에 편집을 누릅니다. 다른거 건드릴것 없이 인덱스 문서에 페이지에 표시할 문서인 index.html을 입력해주고 저장합니다. - 어디서든 볼수 있게하기위한 퍼블릭설정은 권한에서 버킷정책이랑 퍼블릭액세스를 해줘야하지만 cloudfront에서 oai 로 접근할 것이고 설정을 해주기때문에 그냥 놔둬도 됩니다. 2. Cloudfront 배포 생성 배포 탭에서 배포생성을 합니다. 들어가시면 원본 도메인에 방금 위 S3에서 생성한 버킷이름을 선택합니다. S3에서 생성한 도메인이 다를텐데 2019년 이후에.. 2022. 5. 25. [ECS] taskRole VS executionRole 차이 목차 간단하게 말하면 excutioRole은 ECS 에이전트 의 역할 taskrole은 task의 역할이라고 보시면 됩니다. ECS 서비스내의 여러 역할들 Taks role 컨테이션 애플리케이션이 AWS API를 호출해야 하는 경우 AWS 자격 증명으로 AWS API 요청에 서명해야 하며, 작업 IAM 역할은 Amazon EC2 인스턴스 프로파일이 Amazon EC2 인스턴스에 자격 증명을 제공하는 방식과 유사하게 애플리케이션이 사용할 자격 증명을 관리하는 전략을 제공합니다. AWS 자격 증명을 생성하여 컨테이너에 배포하거나 Amazon EC2 인스턴스의 역할을 사용하는 대신, IAM 역할을 Amazon ECS 작업 정의 또는 RunTask API 작업과 연결할 수 있습니다. 그러면 컨테이너가 AWS S.. 2022. 5. 23. AWS CodeDeploy BLUE/GREEN 배포 자세히 알아보기 목차 Blue/Green 배포를 사용하는 방법에 대해 자세히 알아보기 전에 이것이 무엇인지 이해해 보겠습니다. 블루/그린 배포는 다운타임 없이 또는 최소한의 위험으로 애플리케이션/소프트웨어의 새 버전을 배포하려는 배포 패턴입니다. 블루/그린 배포는 유사한 스택을 가져온 다음 이 새 스택에 새 버전의 애플리케이션을 배포하여 달성됩니다. 트래픽은 현재 스택(블루 스택이라고 함)에서 새 스택(그린 스택이라고 함)으로 이동됩니다. 이제 이것이 무엇인지 다루었으므로 Blue/Green 배포를 선택해야 하는 이유는 무엇입니까? 다운타임 없음: 트래픽을 블루 스택에서 그린 스택으로 이동하고 있습니다. 손쉬운 롤백: Green 스택이 정상이 아니면 역 프로세스를 따라 트래픽을 Blue 스택으로 다시 이동할 수 있습니다.. 2022. 5. 17. AWS ECR lifecycle(수명주기) 설정 ECS를 사용하려면 ECR에 이미지를 올려야 합니다. ECR에는 lifecycle이라고 해서 특정 태그를 지정하거나 안하고 일정 시간이 지나거나 일정 개수 이상일경우 이미지를 삭제 합니다. (일정개수 이상인경우 오래된것부터 삭제) 사용방법은 굉장히 간단합니다. ECR에 들어가서 repository에 들어가면 만들어 놓은 repository 가 나옵니다 lifecycle을 적용하고 싶은 리포지토리를 선택합니다. 그러면 왼쪽탭에 여러 기능이 나옵니다 그중 lifecycle을 선택합니다. 처음 생성하면 밑에 아무것도 없을것입니다. 오른쪽에 규칙생성을 눌러줍니다. 그러면 우선순위, 설명등 나오는데 위에서 설명한대로 조건을 줄수있는 이미지 상태, 매치범위(시간, 갯수)로 설정을 할수있습니다. 규칙작업은 expir.. 2022. 5. 16. jenkins aws s3 pipeline 에러 .../script.sh : aws: not found 에러가 발생하였다. jenkins 서버에 aws cli가 없어서 안된다고한다. 설치를 해주면됩니다. 최신 버전의 AWS CLI 설치 또는 업데이트 - AWS Command Line Interface (amazon.com) 최신 버전의 AWS CLI 설치 또는 업데이트 - AWS Command Line Interface 설치 관리자의 아무 위치에서나 Cmd+L을 눌러 설치에 대한 디버그 로그를 볼 수 있습니다. 이렇게 하면 로그를 필터링하고 저장할 수 있는 로그 창이 열립니다. 로그 파일도 /var/log/install.log에 자 docs.aws.amazon.com https://honeywater97.tistory.com/139 2022. 5. 4. ec2 중지중 오류 해결 리소스 과도하게 먹어서 하드웨어가 먹통되어 중지중에서 멈춰버린듯 하다. 강제중지 했다가 안되면 aws에 문의 https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/TroubleshootingInstancesStopping.html 인스턴스 중지 문제 해결 - Amazon Elastic Compute Cloud 이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오. docs.aws.amazon.com 2022. 5. 4. 이전 1 ··· 8 9 10 11 12 13 14 ··· 19 다음 반응형