프로젝트 생성 - BackOffice

 

 


프로젝트 생성 BackOffice

브랜치 생성

http://dcsf-dev08.i-on.net/dxp/frontbuilder 접속

frontbuilder 메인 홈 → + 버튼 → New Branch 클릭

브랜치명 입력

명명규칙: project/{프로젝트명(대문자)}

  • ex) project/DEMO

브랜치 생성된 화면 예시

 

로컬 PC에 BackOffice 환경설정

Git 소스를 로컬에 설치 후 프로젝트 환경 설정을 진행해야함

  • 서버 Config 파일을 구성하기 전이기 때문에 BackOffice 설치 후 로컬 서버 실행은 필요하지 않음

ICE4 BackOffice 로컬 설치 가이드: BackOffice

 

 


프로젝트 환경설정

Server config 설정

프로젝트 Server Config 파일 생성

프로젝트/config/default 폴더 복사 → 폴더명 변경: 프로젝트/config/{project}

 

Local Config 설정: loc.config.js

projectId: “{project}”

apihost: 로컬 backend에서 실행한 서버 port와 동일한 값으로 설정

  • Default: 8080

  • 예시) local.i-on.net:8080

frontAppHost: 로컬 FrontOffice에서 실행한 서버 port와 동일한 값으로 설정

  • Default: 8000

  • 예시) local.i-on.net:8000

backOfficeAppHost: 로컬 BackOffice에서 실행한 서버 port와 동일한 값으로 설정

  • Default: 3000

  • 예시) local.i-on.net:3000

 

Dev/Stg/Prd Config 설정: dev.config.js, stg.config.js, prd.config.js

projectId: Backend → application-{project}-*.yml → core.project에서 설정한 프로젝트명과 동일하게 설정

  • projectId: “{project}”

  • (예시) projectId: “demo”

apiProtocol: Dev/Stg/Prd backend 서버에서 사용할 프로토콜 값으로 설정

  • Default: https

  • 서버는 보안 및 성능 개선을 위해 SSL인증서를 포함한 Https 통신을 권장

apihost: Dev/Stg/Prd backend 서버 도메인으로 설정

  • 예시) dev-api.demo.com / stg-api.demo.com / api.demo.com

frontAppHost: Dev/Stg/Prd FrontOffice 서버 도메인으로 설정

  • 예시) dev.demo.com / stg.demo.com / www.demo.com

backOfficeAppHost: Dev/Stg/Prd BackOffice 서버 도메인으로 설정

  • 예시) dev-admin.demo.com / stg-admin.demo.com / admin.demo.com

 

package.json 설정

scripts 내부 $project를 프로젝트명으로 설정

  • 프로젝트명: Backend → application-{project}-*.yml → core.project에서 설정한 프로젝트명과 동일하게 설정

  • (예시) PROJECT=demo, ACTIVE_PROFILE=demo

 

Pm2 설정: ecosystem.config.js

pm2는 서버에서 백그라운드로 application을 실행할때 사용하는 Node.js 라이브러리

설정값 소개

name: 서비스명

error_file: 에러 로그 파일

out_file: pm2 로그 파일

--max_old_space_size: 메모리 할당 설정

max_memory_restart: 메모리 사용량이 설정값을 넘어가면 자동으로 서비스 restart

exec_mode: ‘cluster’ 모드는 한 applicaion에 클러스터로 여러대의 어플리케이션을 실행, default는 단일 applicaion 실행

instances: 클러스터 모드로 사용할 어플리케이션 실행 댓수. 이상적으로는 CPU core와 동일한 댓수로 설정. ‘max’나 0으로 설정하게 되면 자동으로 core갯수에 맞춰 실행

env_dev: 개발 서버 실행용 환경변수

env_stg: 스테이지 서버 실행용 환경변수

env_prd: 운영 서버 실행용 환경변수

PROJECT: {프로젝트명}

  • 프로젝트명: Backend → application-{project}-*.yml → core.project에서 설정한 프로젝트명과 동일하게 설정

  • (예시) PROJECT: ' demo'

PORT: 프로젝트 실행할 PORT

  • 한 대의 서버에 BackOffice만 띄울경우: 8080

  • 한 대의 서버에 BackOffice, FrontOffice, Backend를 함께 띄울경우: 3000