도커로 만든 테스트 파일 travis-ci 로 테스트 시키기 .travis.yml ,Dockerfile.dev .

홍태경·2021년 5월 28일
0
post-thumbnail

도커환경에서 만든 이미지를 travis.yml파일로 테스트 하고배포하기

sudo: required

language: generic

services:
- docker

before_install:
-echo "I will start."
-docker build -t gusxoqkqh1/docker-react -f Dockerfile.dev .

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

after_success:
-echo "Test Success"

  • 실습
  1. docker-react 디렉토리에
    .travis.yml 파일생성

.travis.yml

sudo: required

language: generic

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

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

after_success:
  - echo "Test success"

(base) hongtae@user:~/바탕화면/docker-react$ git add .
(base) hongtae@user:~/바탕화면/docker-react$ git commit -m "travis.yml file added"
[master 88dd728] travis.yml file added
1 file changed, 17 insertions(+)
create mode 100644 .travis.yml
(base) hongtae@user:~/바탕화면/docker-react$ git push origin master
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 469 bytes | 469.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/gusxoqkqh1/docker1.git
cb35ca4..88dd728 master -> master

travis ci 에서 귀신같이 받아와서 자동으로 뭔가를 진행하고 있따

검사 중 노랭이

에러 검출 빨갱이

친절하게도 찍어준다

다시 수정 후 git add , commit, push 을 하면

travis에서 다시 .travis.yml 코드를 가져와 테스트를 진행한다

성공! 초록이

-- --coverage 덕분에 255 라인 밑부터 자세하게 검사를 해주는것이다.

테스트 성공했으니 AWS 배포할 차례!

Elaxtic BeanStalk

엘라스틴 빈스탁 환경안에 EC2 나 디비나 많은것을 넣어두고 컨트롤 해준다

장고를 ec2에 해두 되지만 우리는 빈스탁에 넣고 배포 할 예정

create Application
리눅스 2는 에러가 발생한덴다

docker

어플리케이션 생성

완성

브라우저에서 요청을 보낼 때 로드밸런스로 가는데
빈스탁 안에 들어가

트래픽이 많아 EC2 하나로 요청을 못 처리하는 상황이라면

배포부분이 추가된 travis 설정 코드

.travis.yml

sudo: required

language: generic

services:
	- docker
    
before_install:
	-echo "start Creating an image with dockerfile"
    - docker build -t gusxoqkqh1/docker-react -f Dockerfile.dev .
    
script:
	- docker run -e CI=true gusxoqkqh1/docker-react npm run test -- --coverage
    
deploy:
	provider: elasticbeanstalk
    region: "ap-northeast-2"
    app: "docker-react"
    env: "Dockerreact-env"
    bucket_name: elasticbeanstalk-ap-northeast-2-160156176918
    bucket_path: "docker-react"
    on:
    	branch: master 

s3 가 버킷이 자동으로 생성됨 ci로 검증이 끝난것을 압축하여 S3 버켓에 보내게 된다

profile
나의 에고를 인정하고 사랑하자

0개의 댓글