서론
nodejs 환경에서 express 백앤드와 react 프론트앤드를 만들었고, 로컬환경에서 내 git 저장소에 모두 커밋을 해두었다. 이제 우리가 해야할 이은 git 저장소에 있는 소스코드 기반으로 내 라이트세일 리눅스 서버에 배포하는 것.! 일단 BE 배포나 FE 배포나 둘다 nodejs 환경이기때문에 그놈이 그놈이고 방법이 크게 다르지 않아 일단 express 로 구현한 backend 서버 배포하는 방법에 대해 알아보자!
node 구동 환경 준비
먼저 라이트세일이나 EC2 리눅스 서버에서 node 기반 앱을 구동하기 위해서는 nodejs 런타임 환경과 npm 도구를 설치해줘야한다.
https://extsdd.tistory.com/444
위 포스팅을 참고하여 nodejs 와 npm 을 설치해주자.
git 저장소 연동
그 다음 내 서버의 디렉토리와 git 저장소와 연동이 되어야한다. 연동 방법은 아래 포스팅을 참고하면 된다.
https://extsdd.tistory.com/446
위 포스팅을 참고하면 된다. 위 포스팅에는 express 백앤드를 예시로 잡았는데 동일한 과정으로 프론트앤드도 받아주면 되며, 예시 디렉토리 구성은 아래와 같다.
- server
- backend_project
- frontend_project
의존성 설치
앞 단계까지 수행하고나면 보통 node_modules 폴더가 없다. 의존성은 package.json 에만 명시하고 하위 디렉토리인 node_modules 폴더는 git에 올리지 않으니 현재 없는것이다. 이제 프로젝트에 필요한 의존성을 설치해줘야할 차례이다. 이전 단계에서 npm 모듈까지 다 설치되었으니 프로젝트 경로에서 아래 명령어를 수행해 의존성을 설치해주자.
npm install
위처럼 진행하면 의존성 설치 완료다. 동일하게 backend, frontend 모두 진행해주자.
서버 실행
자 이제, 앱을 구동할 nodejs 환경도 구성했고, git 저장소에있는 프로젝트를 연동해서 내 리눅스 서버까지 가져왔고, 프로젝트를 구동하기 위한 의존성까지 모두 설치가 되었다.. 이제 정상적으로 돌아가는지 실행을 해보자!
npm run start
#or
npm run debug
그럼 정상적으로 실행되는 것을 볼 수 있다. 이제 내 리눅스 서버에서 내가만든 express api 백앤드가 동작하는 것이다. 동일하게 react 앱도 구동시키면 된다.