본문 바로가기
architecture

JHipster 환경 구성

by 일상코더 2023. 2. 16.

🖐️JHipster를 이용하기 위해서 필요한 Tool Kit

  • Java
  • Node.js
  • Git
  • Docker

👉 Java 11 설치


👉  Node.js 설치


👉  Git 설치

  • brew intall git
  • 버전확인
    • git --version

👉  Docker 설치


👉  JHipster6 설치

  • JHipster6 최신 버전(6.10.5) 다운로드가 원활히 안되서 6.9.1로 진행
  • npm install -g generator-jhipster@6.9.1
  • 설치 후 JHipster 버전 확인
    • jhipster --version
  • JHipster6 재설치 하고 싶은 경우 Node.js 완전삭제 후 재설치

🖐️Docker 컨테이너 내에서 JHipster 생성기를 실행하기

 

  • 최신 JHipster Docker 이미지 다운로드
    • $docker pull jhipster/jhipster:v6.9.1
  • 홈 디렉토리에 "jhipster" 폴더 만들기
    • $mkdir ~/jhipster
  • Docker "/home/jhipster/app" 폴더를 로컬 "~/jhipster" 폴더에 공유하기
    • $docker run --name jhipster6 -v ~/jhipster:/home/jhipster/app -v ~/.m2:/home/jhipster/.m2 -d -t jhipster/jhipster:v6.9.1
  • 컨테이너가 실행 중인지 확인, 중지, 다시 시작
    • $docker container ps
    • $docker container stop jhipster
    • $docker container start jhipster
  • 실행 중인 컨테이너에 로그인하는 가장 쉬운 방법
    • Ubuntu Xenial에서 sudo명령을 사용할 수 없으므로 "루트"로 로그인 하기 위한 명령어
      • $docker container exec -it --user root jhipster6 bash
  • jhipster 실행
    • root@:/home/jhipster/app# jhipster

🖐️Gateway & Registry

 

  • Registry 서비스 시작 방법
    • 위에서 만든 디렉토리 cd jhipster
    • $docker-compose -f src/main/docker/jhipster-registry.yml up -d

 

  • Gateway 서비스 시작 방법
    1. Mariadb 설치 및 권한 설정
      • Docker image로 MariaDB 설치
        • $docker pull mariadb
      •  MariaDB Container 생성
        • $docker run -p 3306:3306 --name mariadb-container -e MARIADB_ROOT-PASSWORD=1234 -d mariadb
        • 명령어 설명 --name = mariadb-container라는 컨테이너 이름을 부여 -p 3306:3306 : host port number:container port number -e : -e 는 환경 변수 옵션 -MARIADB_ROOT_PASSWORD=admin : 비밀번호를 지정 -d : detached 모드에서 실행되어 백그라운드로 실행함 -mariadb : 앞서 받은 이미지 이름
        • Docker 컨테이너 mariadb 접속
          • $docker exec -it mariadb-container bash
          • mysql -u root -p 입력후 위에서 입력한 root 계정 비밀번호 입력
      • 사용자 생성하기
        • CREATE USER 'sample_user'@'%'; ALTER USER 'sample_user'@'%' IDENTIFIED BY 'sample_1234' ;

      • 데이터 베이스 생성후 권한 부여
        • -- 데이터베이스 생성하기
          • CREATE DATABASE `sample`;
        • -- 사용자에게 권한 부여하기.
          • GRANT Alter ON sample.* TO 'sample_user'@'%';
          • GRANT Create ON sample.* TO 'sample_user'@'%';
          • GRANT Create view ON sample.* TO 'sample_user'@'%';
          • GRANT Delete ON sample.* TO 'sample_user'@'%';
          • GRANT Delete history ON sample.* TO 'sample_user'@'%';
          • GRANT Drop ON sample.* TO 'sample_user'@'%';
          • GRANT Grant option ON sample.* TO 'sample_user'@'%';
          • GRANT Index ON sample.* TO 'sample_user'@'%';
          • GRANT Insert ON sample.* TO 'sample_user'@'%';
          • GRANT References ON sample.* TO 'sample_user'@'%';
          • GRANT Select ON sample.* TO 'sample_user'@'%';
          • GRANT Show view ON sample.* TO 'sample_user'@'%';
          • GRANT Trigger ON sample.* TO 'sample_user'@'%';
          • GRANT Update ON sample.* TO 'sample_user'@'%';

2. 개발환경 설정(MariaDB가 실행이 되었으니, MariaDb 와 JHipster 연동 작업)

 

 jhipster디렉토리에 있는 src/main/resources/config/application-dev.yml 파일 수정 

...생략
datasource:
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:mariadb://localhost:3306/sample?useLegacyDatetimeCode=false&serverTimezone=UTC
    username: sample_user
    password: sample_1234
    hikari:
      poolName: Hikari
      
 생략...

datasource 부분에서 연결 경로를 지정해주는 작업

 

 

3. gradlew 실행

  • 모든 설정은 끝! jhipster 디렉토리에서 gradlew실행 

cd jhipster

 ./gradlew

...생략 
---------------------------------------------------------- 
Application 'sample' is running! 
Access URLs: Local: <http://localhost:8080/> 
External: <http://192.168.0.9:8080/> 
Profile(s): [dev, api-docs] 
----------------------------------------------------------
생략...

서버가 정상적으로 실행중

댓글