일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Gradle
- Git
- Design Patterns
- Spring
- jenkins
- jsp
- IntelliJ
- springboot
- redis
- elasticsearch
- 맛집
- javascript
- db
- ReactJS
- laravel
- MySQL
- tool
- Spring Boot
- devops
- JVM
- php
- AWS
- Web Server
- Oracle
- Spring Batch
- java
- 요리
- ubuntu
- it
- linux
- Today
- Total
아무거나
codedeploy 세팅(+codecommit) 본문
# aws codedeploy(+codecommit)
(문제확인)
[case 1]
- EC2 IAM ROLE 설정(x)
- 가용영역 동일(o)
- AWSCLI 설정후 configure 설정(o)
[case 2]
- EC2 IAM ROLE 설정(o)
- 가용영역 동일(x)
- AWSCLI 설정후 configure 설정(x)
* 사전에 빌드를 해주는 시스템이 필요하다 travisCI나 jenkins를 활용하자. (s3 압축, war 등.. 파일 업로드용)
- role의 설정을 전제로 시작해야 한다. (만약 ec2에 iam role이 지정이 안되있으면 설정해주자.)
- aws cli 설치후 configure 설정 필요(s3 엑세스 테스트 용도)
- 마지막으로 가용영역이 role에 동일하게 설정되어있는지 확인해야된다.
1. codedeploy서비스가 참고할 yml파일을 생성하자.
// 프로젝트 최상위 경로에 appspec.yml 생성 [https://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/reference-appspec-file.html 참고]
// https://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/reference-appspec-file.html 간격 세션
[appspec.yml]
version: 0.0
os: linux
files:
- source: /
destination: /data
permissions:
- object: /data
pattern: 775
hooks:
BeforeInstall:
- location: scripts/beforeInstall.sh
runas: root
ApplicationStart:
- location: scripts/restart.sh
runas: root
2. Codedeploy Agent 설치/설정(linux ubuntu16.04)
- sudo apt-get install ruby
- sudo apt-get install wget
- cd /home/ubuntu
- wget https://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/latest/install
- sudo chmod +x ./install
- sudo ./install auto
- sudo service codedeploy-agent start
3. CodeDeploy Role 생성(Type은 CodeDeploy를 선택하고, AWSCodeDeployRole Policy를 추가합니다.
4. Github가 아닌 S3 사용 시 S3 Access Role 생성(EC2 매핑용)
5. 설정에 맞게 애플리케이션을 생성한다.
6. 배포 그룹을 선택하고 위에 작업탭에서 새 개정 배포 선택후 입력
- 여기서 s3로 배포하려면 아래 예제와 같이 입력한다.
ex) s3://ws.bucket/ws_ep_new/ws_ep_new_dev_0.0.0.zip // 위에서 서버에서 aws명령으로 s3접근가능한지 확인필요
- 배포 콘텐츠 옵션(중요 - 2번으로 자주함)
7. 배포 완료
'Infra > AWS' 카테고리의 다른 글
[codedeploy] 트리거 설정(aws sns 알람) (0) | 2019.03.21 |
---|---|
[codepipeline] codepipeline에서 s3연동시 주의사항 및 요금 (0) | 2019.03.21 |
[codecommit] codecommit 세팅 (0) | 2019.03.21 |
codepipeline+codedeploy+jenkins CI/CD 구성 (0) | 2019.03.21 |
aws 배포 자동화 서비스 비교 (0) | 2019.03.21 |