7533ymh
117
2021-04-01 03:03:58
19
1361

백엔드 프론트엔드 협업


안녕하세요 이번에 졸업작품 프로젝트를 하게 된 대학생입니다. 

현재 인원은 3명인데 초기설정하고 있는 상태입니다.

제가 백엔드를 맡고 있고 스프링부트를 사용하고 프론트엔드의 경우 리액트를 사용할 예정입니다.

아직 모두 그렇다고 할 실력을 가지고 있지 않아 백지상태부터 시작하는 중인데요.

한가지 질문이 있습니다. 

전에 안드로이드 프로젝트 진행 시 아파치와 php를 통해 웹서버를 열어서 한 컴퓨터에서 열어서 관리를 했습니다.  하지만 웹프로젝트는 프론트와 백엔드 둘다 서버를 가지고 있다고 들었습니다. 또한 배포를 통해 클라이언트에게 보여지는 것으로 알고 있는 데 이 상황에서 협업을 할려면 어떻게 해야하나요?

도커를 통해 각각 작업하고 톰캣을 통해 배포를 해야하는 건가요? 아직 지식이 많아 머가 먼지를 잘 모르겠네요 ㅜㅜㅜ 도움 부탁드립니다.

1
  • 댓글 19

  • 캐티
    5k
    2021-04-01 03:14:35

    아파치랑 php 는 소스 변경을 자동으로 반영해주는 구조인쩌여. 머 어차피 FTP 이런걸 썻을거니까 동시작업이 어느정도 가능했을꺼빈다. 요즘은 git 서버를 많이 쓰빈다. 명령어가 어렵다고 하는 분들이 있어서 svn 서버를 쓰기도 했스빈다.

    서버 구축은 별도에 영역인데 머 도커는 필수가 아닌쩌여.

  • 7533ymh
    117
    2021-04-01 03:21:02 작성 2021-04-01 03:21:36 수정됨

    @캐티

    그럼 aws ec2 같은곳에 배포를 안해도 되는건가요?

  • 쭈꾸마뇽
    187
    2021-04-01 03:28:27

    배포를 하는것까지 목표라면 클라우드를 사용하면 협업이 편할겁니다.


    제가 프로젝트 할땐 프론트는 로컬에서 기능 구현할때도 클라우드에 배포되있는 백엔드 api를 호출하는 방식으로 진행했습니다.

  • 7533ymh
    117
    2021-04-01 03:30:18

    쭈꾸마뇽 

    aws ec2 같은 서비스 말씀하시는 건가요??

  • 쭈꾸마뇽
    187
    2021-04-01 03:32:18
    그렇죠!
  • 캐티
    5k
    2021-04-01 03:32:31

    굳이 ... 약속된 시간에 작업할 컴피터를 켜주면 될것 같스빈다. 졸업작품을 시연할때는 학교에서 쓸 컴피터를 제공 해주지 않겠는쩌여.

  • 쭈꾸마뇽
    187
    2021-04-01 03:37:03

    사실 저도 졸작할땐 클라우드 안썻던.. ㅋㅋㅋ


    그래도 졸작이면 시간도 길고 학교에서 필요한 비용 지원도 해주니까


    클라우드 서버 비용지원 받아서 해보면 좋은 경험이 될거같아요

  • 7533ymh
    117
    2021-04-01 03:43:28 작성 2021-04-01 03:46:17 수정됨

    쭈꾸마뇽

    그렇다면 aws ec2에 톰캣와 스프링 관련 파일들을 배포해서 rest api를 사용하게 되는건가요??

  • 쭈꾸마뇽
    187
    2021-04-01 03:46:36

    네네 


    저는 젠킨스로 CI/CD 환경부터 먼저 구성하고 디비도 클라우드에 다 올리고 nginx로 호스팅까지 다 세팅하고 보통 시작했습니다.


    백엔드 서버 올리는건 캐티님이 말씀하신 도커도 있고 pm2도 있고 합니다. 찾아보시면 될거같아요


  • 7533ymh
    117
    2021-04-01 03:53:26

    쭈꾸마뇽

    클라우드의 경우 aws ec2 말고 로컬에서 만드는 방법은 없나요?

  • kenu
    56k
    2021-04-01 05:55:53
    해당 게시물은 관리자에 의해 Tech Q&A에서 포럼로 이동 되었습니다.
  • 장독깨기
    3k
    2021-04-01 07:24:45

    소스 코드는 형상관리 툴(svn,git)로 동기화하고

    로컬 컴퓨터에서 톰캣 설치하고 돌리면 됩니다.

    이걸 외부로 공개하겠다고 하면

    도메인 확보하고 서버 확보해서 올리면 되겠지요.

    클라우드라는게 별게 아니구요..

    서버 제공하는 업체가 컴퓨터 하나에 가상머신 인스턴스를 여러개 두는 겁니다.

    졸업작품이니 굳이 도메인,서버 확보할 필요없이

    로컬에서 돌리면 되지 싶습니다.

  • 7533ymh
    117
    2021-04-01 07:47:01

    장독깨기


    그렇다면 리액트를 빌드 후 스프링 프로젝트에 담고 war파일로 톰캣으로 배포하게 되는걸까요?
  • 장독깨기
    3k
    2021-04-01 07:51:20

    리액트는 제가 해본적이 없어 스프링이랑 어떻게 연계하는진 모릅니다만,

    기본적으로 로컬 PC 나 서버나 차이는 없습니다.


  • MKRO
    498
    2021-04-01 08:53:32

    도커는 굳이..? 안 쓰는게 좋겠구요

    배포도 뭐 굳이 해야할까요..? 이거는 프로젝트 주제를 몰라서 제가 결정할 문제는 아닌거 같네요. 꼭 배포를 해야하는지 생각해보세요 졸작에 집중하시는게 좋을지도?

    로컬 pc 한대에서 api를 제공하는 어플리케이션(백엔드)을 돌리고, 동시에 api를 요청하는 fe어플리케이션도 돌리도록 구성하는게 제일 공수가 적을 것 같습니다. 그 상태에서 서비스를 하고 싶다면 아파치나 엔진엑스 같은 서버를 통해 어플리케이션을 서비스하면 되구요. 클라우드에 배포까지 하고 싶으시면 이 구성 그대로 클라우드에 올리시면 되구요

  • 7533ymh
    117
    2021-04-01 09:46:13
  • 7533ymh
    117
    2021-04-01 09:47:04

    MKRO 

    api를 요청하는 fe어플리케이션이 스프링과 리액트의 경우 axios로 통신하는 경우인건가요?

  • 열공하자
    1k
    2021-04-01 12:07:07

    백엔드 API를 프론트에서 호출하기 때문에

    서버를 따로 가져가도 되고 같이 가져가도 됩니다.

    현 추세는 아마 다르게 가져가는 걸로 알고 있습니다.

    로컬이든 어디든 백엔드 서버 셋팅하고, 로컬이든 어디든 프론트 서버 셋팅하고

    둘이 연결하고 배포를 하던 로컬에서 보여주던 하면 됩니다.

    형상관리도 따로 관리하던 아니던 상관없습니다.

    API호출도 axios던 fetch건 쓰고 싶은거 쓰시면 됩니다.




  • 7533ymh
    117
    2021-04-02 00:07:13

    열공하자

    그렇가면 제가 백엔드 어플리케이션을 war파일로 톰캣으로 배포하고 프론트엔드인 react를 nginx에 올려 돌려서 스프링이 nginx 서버로 api를 뿌려주게 하는 건가요?

  • 로그인을 하시면 댓글을 등록할 수 있습니다.