리액트

Docker 공부

두캔두잇 2024. 12. 19. 15:42

react 프로젝트를 nginx와 함께 docker에서 배포하기에 앞서서 docker가 무엇인지에 대해 공부해봤다.

docker란?

  • 컨테이너 기반의 오픈 소스 플랫폼이다. 그리고 애플리케이션을 개발,배포 및 실행 할 수 있도록 해준다. 그리고 이 모든것들을 하나의 패키지로 묶어 컨테이너(container)로 구분하여 실행 할 수 있게 한다.

docker 사용의 장점

  • 이식성
  1. docker 컨테이너는 운영체제에 상관없이 동일하게 작동한다. 그렇기 때문에 개발 환경과 배포 환경일 때의 일관성을 유지할 수 있다.
  • 격리성
  1. 각각의 컨테이너는 독립적으로 실행되어 다른 컨테이너들과의 충돌을 방지할 수 있다. 그렇기 때문에 msa와 같이 다양한 서비스들을 동시에 실행 할 수 있다.
  • 빠른 배포
  1. 컨테이너는 가볍고 빠르게 시작할 수 있어서 배포 및 스케일링이 편하다.
  • 버전관리
  1. docker에서 이미지를 받고 컨테이너를 만드는데, 이 이미지는 버전관리를 지원하여, 특정버전으로 쉽게 롤백하거나 업데이트 할 수 있다.

내 생각으로는 docker를 사용하였을 때의 좋은점이 컨테이너화를 통해 일관된 환경에서 실행 할 수 있다는게 가장 좋은 점인것 같고
이미지를 받아 컨테이너화 하기때문에 쉬우며 각각의 컨테이너별로 독립적으로 실행되다보니 다른 사람들과의 협업을 할 때에도 사용하기에 적합한 것 같다.
좀 더 들어가자면 Dockerfile을 만들어서 build한 index.html을 자동화배포를 해야하는데 아직 Dockerfile에 대해 공부하지 않았기때문에
모르는 부분이 많은 것 같다. 다음 docker 관련 포스팅에서는 react와 nginx를 docker를 통해 배포하는 과정을 적어볼 까 한다.

'리액트' 카테고리의 다른 글

useInfiniteQuery의 pageParam 와 initialPageParam의 차이  (0) 2024.12.22
flatMap()  (2) 2024.12.21
tanstackquery [useInfiniteQuery]  (0) 2024.12.19
Array.include()  (0) 2024.12.17
slice() vs splice()  (0) 2024.12.16