단일 AWS CloudFormation 스크립트를 사용하여 간단하고 저렴한 CDN 지원 정적 웹 사이트를 생성하세요. Gatsby, Hugo, 11ty와 같은 정적 사이트 생성기를 사용하여 구축된 사이트에 적합합니다. 무상태 React 앱; 또는 그냥 오래된 HTML, CSS, 이미지 파일일 수도 있습니다.
여기에서 AWS에 도메인을 등록하세요.
Route53에서 해당 도메인에 대한 호스팅 영역을 생성했습니다.
simple-static-website.yaml
템플릿을 사용하여 새 CloudFormation 스택을 생성합니다. CloudFront의 제약으로 인해 이 작업 은 us-east-1
에서 수행되어야 합니다.
매개변수를 제공하세요.
콘솔이나 awscli를 사용하여 CloudFormation 스택을 프로비저닝합니다.
aws cloudformation deploy
--stack-name foo
--template-file simple-static-website.yaml
--parameter-overrides
DomainName=example.com
HostedZoneId=ABCDEFGHIJK0123456789
WebsiteName=www
새로 생성된 S3 버킷에 간단한 index.html 파일을 넣습니다. 샘플 awscli 명령은 스택의 CloudFormation 출력을 확인하세요.
제공한 도메인으로 새 웹사이트를 방문하세요. URL에 대한 CloudFormation 출력을 참조하세요.
CloudFront CDN은 전 세계 여러 위치에서 웹 사이트를 캐시한다는 점을 기억하십시오. 사이트를 변경하면 캐시를 무효화해야 합니다. 요금이 부과되지만 서버를 실행하지 않기 때문에 전체적으로 매우 저렴한 설정입니다.
이 스크립트는 Alain Seng의 훌륭한 블로그 게시물과 현재는 존재하지 않는 Amazon CloudFormer 템플릿을 통해 실행되는 기존 수동 프로비저닝 사이트의 출력에서 영감을 받았습니다. CloudFormer는 훌륭한 도구이지만 솔루션을 통해 사용자에게 제공되는 CVE 수가 증가함에 따라 Amazon에서 제외되었습니다. 여기에 대해 karimelmel이 쓴 좋은 글이 있습니다. CloudFormation 스크립트를 개선하고 새로운 기능을 추가한 eisenhowerj에게 감사드립니다.