개발자

프론트엔드에서 도커를 도입해야 하는 시기와 이유가 무엇일까요?

2023년 01월 30일조회 1,488

도커를 사용하는 이유가 서로 다른환경에서 일어나는 이슈 때문에 사용한다고 알고있습니다. 보통(?) 백엔드에서 데이터베이스 및 환경설정 때문에 도커를 사용한다고는 알고 있는데 프론트엔드에서는 언제 왜 도커를 도입해야하는지를 알고싶어서 질문드립니다. 질문 맥락) 팀 프로젝트하면서 프론트 쪽에도 도커를 써야하는가에 대해 의논하게 되었습니다!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 4

인기 답변

김문수님의 프로필 사진

개발환경과 운영환경이 동일하다는 안정감이 필요할 때, 그때가 도입할 시기라고 생각합니다. 팀 프로젝트로 작업을 하실 때는 별로 필요성을 느끼지 못하실 수 있는데요, 만약 조금 더 큰 규모에서 개발을 한다면 모든 구성원의 로컬 개발 환경, 그리고 배포될 환경이 동일 하기가 매우 어려울 겁니다. 환경 변수 하나만 달라도 예상치 못한 에러가 발생할 것이고, 디버깅을 하느라 하루를 날릴 수도 있습니다. 그래서 개발하다가 ‘아니 내 머신에서는 잘 돌아가는데 배포만 하면 깨져요!’ 하는 상황이 나올 수도 있죠. 다만, 프론트 개발 공부하기도 어려운데 도커 환경 세팅까지 챙기려다보면 진이 다 빠져서 프론트에 집중하지 못할 수도 있습니다. 그래서 요약하자면, 우선 프론트에 집중하시고 여력이 남으시면 배포와 개발 환경을 도커로 통합해보는 경험을 해보시면 도움이 될 것 같습니다. - 상황에 따라 또 엄청 큰 회사로 가시면 누군가 세팅을 다 해줄 수도 있겠네요. 그때도 잘 쓰는 법은 배워야겠지만요 ㅎ

인기 답변

강병진님의 프로필 사진

저는 프론트엔드는 굳이 도커를 도입할 필요는 없다고 생각합니다. 도커의 장점은 개발을 컨테이너화 해서 다양한 컨테이너들이 유기적으로 연결돼서 작동하는 것이라고 생각합니다. 하지만 프런트엔드의 경우에는 백엔드 서버와 HTTP나 Socket 연결이면 충분하고 데이터베이스나 다른 컨테이너와 직접적인 연결이 필요 없기 때문입니다. 작성하고보니 다른 의견을 가진 분이 있다면 다른분들 의견도 궁금하네요.

profile picture

익명

작성자

2023년 01월 31일

그렇군요 의견 감사합니다!!

김재혁님의 프로필 사진

프런트엔드 담당으로 백엔드 API가 필요하고 API 서버 구성이 복잡한 데다가 API revision이 발생하고 있는 상황이라면 docker 말고 다른 대안이 있을까 싶습니다. 백엔드 API 서버를 구동하기 위해서 프런트엔드 개발자 개발 PC에 백엔드 서버 구동을 위한 환경을 그대로 갖추기도 부담스럽고, API 가 버전에 따라 전달할, 전달받을 payload 가 다르 다면 버전별로 API 서버를 구동할 환경을 유지하기도 힘들겠지요

이상헌님의 프로필 사진

프로젝트에서 이미 Kubernetes를 활용하고 있다는 전제 아래 2가지 정도의 경우가 있을 것 같습니다. 1. 프론트엔드에서 개발 및 운영하는 BFF가 존재할 때 (ex. next.js) 2. 수없이 많은 테스트환경이 수시로 생성되었다가 파괴되는 상황 (nodejs + static file을 담은 도커파일을 만들어서 백엔드와 같은 namespace의 pod으로 올리면 나중에 namespace만 삭제하는 식으로 특정 테스트환경이 깔끔하게 정리.)

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!