냐하하
754
2020-04-27 13:27:23
3
1136

express로 만든 앱의 배포가 궁금합니다.


frontend = vue js

backend = express


이렇게 두가지를 공부하고 있습니다.

하던중에 나중에 서버에 배포하는게 갑자기 궁금해져서 알아봤는데요.


제가 까막눈인건지... express 배포하는 방법이 제대로 나온 블로그를 찾을수가 없습니다.

express의 (vue의 npm run build는 backend의 public 폴더로 넣었습니다.) 배포는 따로 build가 없나요?

build 없이 통으로 backend 폴더를 서버에 복사하는 개념인건지 궁금합니다.


초보 질문인데 정말 찾지 못하는건지 이해를 못한건지 안보이네요 ㅠㅠ...

0
  • 답변 3

  • 바람종
    1k
    2020-04-27 13:53:54 작성 2020-04-27 13:55:06 수정됨

    vue나 react같은 프론트의 경우는 결과물이 html + css + js등으로 이뤄진 리소스라서 build 결과물이 있지만

    express같은 경우는 노드 위에서 직접 작동하는 것이기 때문에 node_modules등을 포함한 파일들이 다 필요합니다.

    결론적으로 서버로 다 이동해야되는것 맞지만 (프론트쪽에서 생성된 리소스도 포함)

    보통은 도커를 이용해서 배포를 많이 하는 편입니다.

    https://hub.docker.com/_/node

    이런 종류의 이미지에 코드들을 복사하고 npm install 명령어등으로 설치시킨 컨테이너를 배포하는 그런 형태...

    ps. 잠깐 찾아보니 노드쪽 공식문서에도 관련 설명이 있네요
    https://nodejs.org/ko/docs/guides/nodejs-docker-webapp/

  • 냐하하
    754
    2020-04-27 15:14:32

    바람종

    +ㅁ+ 감사합니다. 열심히 공부해보겠습니다~!!!


  • 원푠듯
    290
    2020-04-27 15:19:24 작성 2020-04-27 15:22:36 수정됨

    바닐라 node 환경에서는 의존성 모듈 사용시 npm 환경에 의존해야하나, 로컬에서 webpack 등으로 빌드 환경을 구축하고 테스트, 빌드해서 서버로 js 파일 하나만 올려서 서비스할 수도 있습니다(물론 서버에 nodejs는 설치되어있어야 하지만, node_modules 디렉터리가 모두 올라갈 필요는 없다는 이야기입니다).

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