JHipsterのインストール パーマリンク to " JHipsterのインストール"

インストールの種類 パーマリンク to "インストールの種類"

JHipsterでは、4つの方法を用意しています。迷ったら、2番目の「NPMによるローカルインストール」を選んでください。

  • JHipster Onlineは、JHipsterをインストールせずにアプリケーションを生成するための方法です。
  • 「NPMによるローカルインストール」は、JHipsterで作業する本格的な方法です。すべてはあなたのマシンにインストールされ、セットアップが少し複雑になりますが、ほとんどの人は通常この方法で作業します。
  • Docker」コンテナは、JHipsterがインストールされた軽量コンテナを提供する方法です。

JHipster Online (JHipsterを簡単に実行したいユーザー向け) パーマリンク to "JHipster Online (JHipsterを簡単に実行したいユーザー向け)"

JHipster Onlineは、JHipsterをインストールすることなく、JHipsterアプリケーションを生成できます。

初めてJHipsterを試す方や、JHipsterがどのようなものかを見てみたい方を対象としています。

アプリケーションを生成した後も、Java(アプリケーションの実行)とNPM(フロントエンドのコードの管理)が必要です。したがって、次のセクション(「NPMによるローカルインストール」)の手順のほとんどを実行する必要があります。

今後は、JHipster Onlineがより多くの機能を提供することを期待しています。

NPMによるローカルインストール(一般ユーザー向け推奨) パーマリンク to "NPMによるローカルインストール(一般ユーザー向け推奨)"

クイックセットアップ パーマリンク to "クイックセットアップ"

  1. Java 17または21 LTSをインストールします。オープンソースで無償のため、Eclipse Temurin buildsを使用することをお勧めします。
  2. Node.jsのウェブサイトからNode.jsをインストールします(LTSの64ビット版を使用してください、LTS以外のバージョンはサポートされていません)。
  3. npm install -g generator-jhipsterでJHipsterをインストールします。
  4. (オプション)モジュールやブループリントを使用したい場合(例えばJHipster Marketplaceから取得)npm install -g yoYeoman をインストールします。

JHipsterがインストールされました。次のステップはアプリケーションの作成です。

オプションのインストール パーマリンク to "オプションのインストール"

  1. Javaビルドツールをインストールします。
    • MavenGradleのどちらを使うにしても、通常は何もインストールする必要はありません。JHipsterは自動的にMaven WrapperGradle Wrapper をインストールしてくれます。
    • もし、これらのラッパーを使用したくない場合は、公式の Maven ウェブサイト または Gradle ウェブサイト にアクセスして、自分でインストールを行ってください。
  2. git-scm.comからGitをインストールします。Gitを始める場合は、SourceTreeのようなツールも使用することをお勧めします。
    • JHipsterは、Gitがインストールされている場合、プロジェクトをGitにコミットしようとします。
    • JHipster upgrade sub-generator は、Gitをインストールしておく必要があります。

追加情報 パーマリンク to "追加情報"

JHipsterは、コード生成にYeomanを使用しています。 より多くの情報、ヒント、ヘルプを見つけるには、バグを報告する前にYeoman “getting starting” guide を参照してください。

設定は生成された .yo-rc.json ファイルに保存します。そのため、HOMEディレクトリにJHipsterプロジェクトを生成しないことを 強く 推奨します。もしそうしてしまうと、サブディレクトリに別のプロジェクトを生成できなくなります。これを解決するには、.yo-rc.jsonファイルを削除してください。

Dockerのインストール(上級者向けのみ) パーマリンク to "Dockerのインストール(上級者向けのみ)"

このDockerイメージは、JHipsterジェネレータをコンテナ内で動作させるためのものであることに注意してください。JHipsterが生成するDockerとDocker Composeの設定 とは全く異なります。これは生成したアプリケーションをコンテナ内で実行することが目的です。

情報 パーマリンク to "情報"

JHipsterは固有のDockerfileを持っており、Dockerイメージを生成できます。

またJHipsteはhttps://hub.docker.com/r/jhipster/jhipster/上で”Automated build”を提供しています。

このイメージにより、Docker内でJHipsterを動作させることができます。

前提条件 パーマリンク to "前提条件"

  1. Docker Desktop(推奨): Docker化されたアプリを構築、実行、テストするための最も簡単な方法です。Docker Desktopには、コンテナ/イメージ/ボリュームを管理するためのグラフィカルインタフェース、Docker開発者ツール、Kubernetesサポート、その他多くの機能が付属しています。
  2. Docker Engine: コマンドラインインタフェース(CLI)を持つクライアント/サーバーアプリケーションです。Docker Engineのインストール手順に従ってください。

生成されたファイルは共有フォルダにあるため、Dockerコンテナを停止しても削除されることはありません。ただし、コンテナを起動するたびにDockerにMavenとNPMの依存関係をすべてダウンロードさせ続けたくない場合は、その状態をコミットするかボリュームをマウントする必要があります。

注意: お使いのOSによってDOCKER_HOSTは異なります。Linuxの場合はlocalhostとなります。 Mac/Windowsの場合は、docker-machine ip defaultのコマンドでIPを取得する必要があります。

Linuxでは、自分のユーザがdockerグループに属していない場合、rootユーザとしてdockerコマンドを実行することになります。そこで、自分のユーザーをdockerグループに追加し、非rootユーザーとしてdockerコマンドを実行できるようにするとよいでしょう。そのためには、http://askubuntu.com/a/477554の手順に従ってください。

Linux/Mac Windowsでの使用方法(Dockerを使用した場合) パーマリンク to "Linux/Mac Windowsでの使用方法(Dockerを使用した場合)"

イメージのPull パーマリンク to "イメージのPull"

最新のJHipsterのDockerイメージをPullします。

docker image pull jhipster/jhipster

開発用JHipsterのDockerイメージをPullします。

docker image pull jhipster/jhipster:master

すべてのタグはこちらです。

イメージを実行する パーマリンク to "イメージを実行する"

注意: MacまたはWindowsでDocker Machineを使用している場合、DockerデーモンはOS XまたはWindowsのファイルシステムに対して限られたアクセスしかできません。Docker Machineは/Users (OS X)やC:\Users\<username> (Windows)ディレクトリを自動で共有しようとします。そのため、ボリュームマウントの問題を避けるために、これらのディレクトリの下にプロジェクトフォルダを作成する必要があります。

ホームディレクトリに「jhipster」フォルダを作成します。

mkdir ~/jhipster

以下のオプションを指定して、Dockerイメージを実行します。

  • Dockerの”/home/jhipster/app”フォルダをローカルの”~/jhipster”フォルダに共有します。
  • Dockerが公開する全てのポート(Javaアプリケーションは8080、BrowserSyncは9000、BrowserSync UIは3001)をフォワードします。

docker container run --name jhipster -v ~/jhipster:/home/jhipster/app -v ~/.m2:/home/jhipster/.m2 -p 8080:8080 -p 9000:9000 -p 3001:3001 -d -t jhipster/jhipster

Tip: 過去に一度でもコンテナを起動している場合は、上記コマンドを実行する必要はなく、既存のコンテナを起動/停止できます。

コンテナが起動しているかどうかを確認する パーマリンク to "コンテナが起動しているかどうかを確認する"

コンテナが起動していることを確認するには、docker container psコマンドを使用します。

CONTAINER ID    IMAGE               COMMAND                 CREATED         STATUS          PORTS                                                       NAMES
4ae16c0539a3    jhipster/jhipster   "tail -f /home/jhipst"  4 seconds ago   Up 3 seconds    0.0.0.0:9000-3001->9000-3001/tcp, 0.0.0.0:8080->8080/tcp    jhipster

共通的な操作 パーマリンク to "共通的な操作"

  • コンテナ実行を停止する場合docker container stop jhipster を実行します。
  • そのあと起動するにはdocker container start jhipster を実行します。

Dockerイメージを更新する場合(リビルドまたはDocker hubからのPull)、既存のコンテナを削除し、コンテナを一から実行する方がよいでしょう。そのためには、まずコンテナを停止し、それを削除してから再度実行します。

  1. docker container stop jhipster
  2. docker container rm jhipster
  3. docker image pull jhipster/jhipster
  4. docker container run --name jhipster -v ~/jhipster:/home/jhipster/app -v ~/.m2:/home/jhipster/.m2 -p 8080:8080 -p 9000:9000 -p 3001:3001 -d -t jhipster/jhipster

コンテナにアクセスする パーマリンク to "コンテナにアクセスする"

注意: Windowsでは、Docker Quick TerminalをAdministratorで実行しないと、`npm install`のステップでシンボリックリンクを作成できません。

実行中のコンテナにログインする最も簡単な方法は、以下のコマンドを実行します。

docker container exec -it <コンテナ名> bash

上記のコマンドをコピーペーストしてコンテナを実行した場合、コンテナ名として jhipster を指定する必要があることに注意してください。

docker container exec -it jhipster bash

“jhipster” ユーザーでログインします。

Ubuntu Xenialではsudoコマンドが使えないので、”root”でログインしたい場合は、以下のようにする必要があります。

docker container exec -it --user root jhipster bash

あなたの最初のプロジェクト パーマリンク to "あなたの最初のプロジェクト"

コンテナ内の/home/jhipster/appディレクトリに移動し、Docker内部でアプリの構築を開始できます。

cd /home/jhipster/app

jhipster

アプリケーションが作成されたら、以下のように、通常のgulp/bower/mavenのコマンドをすべて実行できます。

./mvnw

おめでとうございます。Docker内でJHipsterアプリを起動できました。

あなたのマシンにおいて以下が可能です。

  • http://DOCKER_HOST:8080で実行中のアプリケーションにアクセスできます。
  • 生成されたすべてのファイルを共有フォルダ内で参照できます。
Warning: デフォルトでは、jhipster/jhipsterイメージ内にDockerはインストールされません。
したがって以下は実施できません。
  • docker-composeのファイルを使用すること
  • dockerデーモンでDockerイメージを構築すること(Mavenゴール:jib:dockerBuildまたはGradleタスク:jibDockerBuild
ただし、jibのデーモンレスのモードを使えば、dockerデーモンにアクセスしなくてもdockerイメージを構築してレジストリにプッシュできます(Mavenゴール:jib:buildまたはGradleタスク:jibBuild)。 一方、アプリをビルドする前提条件としてdockerレジストリへ認証情報をセットアップする必要があります。詳しくはJib プラグイン設定ドキュメントを参照してください。