오늘은 도커, CI, CD 실습을 한번 해봤다.
도커를 이용해 react, node앱을 담았고
travis CI를 사용하여 깃허브 master branch에 push가 될 때 마다
테스트하고 통과되면 elasticbeanstalk을 사용해 S3, ec2에 자동 배포까지 했다.
설정 부분이 굉장히 까다로웠다.
특히 nginx같은 경우 proxy server로도 사용하고
react의 정적 파일들을 보여주는 server로도
사용했기 때문에 nginx를 잘 모르는 나는 많이 헷갈렸다.
백엔드 쪽에서는 mysql 설정이 까다로웠다.
사실 도커의 container는 끄면 데이터 까지 사라지기 때문에
그 데이터들을 파일로 관리하고 volume을 사용하여 동기화 시켜줘야 한다.
그러기 위해선 설정도 해줘야하는데 많이 까다로웠다...
RDS나 mongo atlas사용하는 것이 더 효율적일 것 같다고 생각을 했다.
굉장히 신기하고 신선했다.
특히 travis CI는 어렵지도 않았고 다음 프로젝트때 써봐야겠다!
도커는 처음에는 쉬웠지만 volume과 이것저것 설정이 들어가고 부터
굉장히 어려웠다.
공부를 열심히 해야겠다.