개발/docker

travis CI - elastic beanstalk 연동하기

덤벨로퍼 2020. 5. 5. 19:14

 

 

깃헙에 푸쉬 되는순간 travis ci 가 도커를 빌드하는 작업을 했었다 

이후에는 aws 엘라스틱 빈스타크를 통해 배포하는 작업을 명령하려한다.

deploy :
    # deploy 할때 이거써라 
    provider : elasticbeanstalk
    # 빈스타크에 url(region),appname(app) 에 명시되어있음
    region : "us-west-2"
    app : "docker"
    env : "Docker-env"
    # s3버킷 s3검색하면나옴
    bucket_name : ""
    bucket_path : "docker"
    on :
        branch : master

provider 에는 배포할 툴을 명시해주고

region 은 elastic beanstalk 의 url 을 보면 us-west-2 라는 지역이있다.

이 지역은 다를수있다.

app 은 EBS 시작할때 만든 어플리케이션 이름, env 도 역시 여기서 다 볼수있다.

 

 

EBS 앱을 만들면  S3 버킷을 생성해준다. aws 서비스-> s3 검색 하면 버킷의 이름을 볼수있다.

 bucket_name에 적어주고

path 는 처음할떄 앱네임과 동일하게 지정해주면 된다. 

on 은 master 브랜치에 푸쉬될때 배포 하겠다는 것이다.

이후에는 travisCI 가 EBS 에 접근할수있도록 접근키를 줘야한다.

deploy :
    # deploy 할때 이거써라 
    provider : elasticbeanstalk
    # 빈스타크에 url(region),appname(app) 에 명시되어있음
    region : "us-west-2"
    app : "docker"
    env : "Docker-env"
    # s3버킷 s3검색하면나옴
    bucket_name : "elasticbeanstalk-us-east-2-931130014731"
    bucket_path : "docker"
    on :
        branch : master
    # travis ci 에서 변수 설정
    access_key_id : $AWS_ACCESS_KEY
    secret_access_key : "$AWS_SECRET_KEY"

ㄱ깃헙에 올라갈 파일이므로 노출이되지 않도록 변수로 지정해주면

해당 값을 travis CI 에서 알아서 보호할수있도록 지정해줄수있다. 

추후에 여기다가 지정해줄예정 ( travis CI -> setting 에있음 ) 

 

우선 비밀키를 확인하기 위해 서비스 iam 을 검색후 사용자->사용자 추가를해준다

해당 사용자가 비밀키에 접근할수있는 권한을 줌

사용자를 만들면 접근키 비밀키를 확인할수있다.

다시 travis CI 에 들어가 값을 지정해주면된다.

그리고나서 변경값을 깃헙 마스터에 푸시하면 된다.