도커 & CI (7)

김동하·2024년 6월 2일
0

Travis CI

  • travis.yml 파일을 작성해준다.

** Travis도 도커 환경을 구성해줘야 한다

sudo: required

language: generic

services:
  - docker

before_install:
  - echo "start creating an image with dockerfile"
  - docker build -t donghakim1992/docker-react -f Dockerfile.dev .

script:
  - docker run -e CI=true donghakim1992/docker-react npm run test --coverage

after_success:
  - echo "test success" 
  • yml 작성 후 푸시하면 travisd에서 테스트 후 빌드를 진행한다.
  • 이제 빌드 파일을 AWS에 전달하여 배포하면 된다.

EB(Elastic BeanStalk)

  • EB는 EC2 인스턴스나 DB 같이 많은 것들을 포함한 환경을 구성하고 있는 소프트웨어를 업데이트 할 때마다 자동으로 환경을 관리해줌 -> EB 안에 EC2도 있는 것

  • 요청이 많아질 경우 로드밸런스에서 ec2를 나눠주는 것을 자동으로 환경구성을 해줌

  • aws에서 eb 환경을 구성하고 travis.yml에 배포에 관한 스크립트를 작성한다

  • eb 환경 구성할 때 IAM 설정을 아래 정책을 포함해서 해줘야함

Travis -> AWS

  • traivs.yml에 deploy 부분을 작성해주면 된다.
  • IAM 에서 access_key를 받아서 travis.yml에서 환경변수 설정에 넣어줘야 한다.
  • dockerfile에 nginx 포트 맵핑을 추가해줘야 한다.

profile
프론트엔드 개발

0개의 댓글