Free Tier: UbuntuインスタンスでのHelidonの設定
このチュートリアルでは、Oracle Cloud Infrastructure Free Tierアカウントを使用してUbuntuコンピュート・インスタンスを設定します。次に、ホストのHelidon MicroProfile (MP)サーバーを設定します。
主なタスクは:
- 開発作業用のコンパートメントを設定します。
- Ubuntu Linuxインスタンスをインストールし、仮想クラウド・ネットワーク(VCN)に接続します。
- ホストがインターネットに接続するために必要なOracle Cloud Infrastructure仮想クラウド・ネットワークおよび関連するネットワーク・サービスを設定します。
- Ubuntu Linuxサーバーにアクセスするための
ssh
暗号化キーを設定します。
- VCNのイングレス・ルールを構成します。
- JDKおよびMavenをインストールします。
- MicroProfile (MP)サーバーでHelidonを設定します。
- Hello World Javaアプリケーションを作成します。
- アプリケーションをテストします。
Linuxインスタンスの設定の簡単なダイアグラムを次に示します。

その他の情報については、次のWebサイトを参照してください。
開始する前に
このチュートリアルを正常に完了するには、次が必要です:
要件
- Oracle Cloud Infrastructure Free Tierアカウント。Oracle Cloud Infrastructure Free Tier
ssh
サポートがインストールされているMacOS、LinuxまたはWindowsコンピュータ。
1. 開発用のコンパートメントの設定
開発用のコンパートメントを構成します。
このチュートリアルで作成するリソースのコンパートメントを作成します。
- Oracle Cloud Infrastructureコンソールにサインインします。
- ナビゲーション・メニューを開き、「アイデンティティとセキュリティ」をクリックします。「アイデンティティ」で、「コンパートメント」をクリックします。
- 「コンパートメントの作成」をクリックします。
- 次の情報を入力します:
- 名前:
<your-compartment-name>
- 説明:
Compartment for <your-description>.
- 親コンパートメント:
<your-tenancy>(root)
- 名前:
- 「コンパートメントの作成」をクリックします。
参照: コンパートメントの作成
2. Ubuntu Linuxインスタンスのインストール
「VMインスタンスの作成」ワークフローを使用して、新しいコンピュート・インスタンスを作成します。
ワークフローでは、インスタンスのインストール時にいくつかのことが実行されます:
- Ubuntu Linuxを実行しているコンピュート・インスタンスを作成およびインストールします。
- Ubuntu Linuxインスタンスをインターネットに接続するために必要なサブネットおよびコンポーネントを含むVCNを作成します。
- インスタンスへの接続に使用する
ssh
キー・ペアを作成します。
「VMインスタンスの作成」ワークフローを使用してインスタンスのインストールを開始するには、次のステップに従います:
示されているステップは、Free Tierアカウント用です。有料アカウントを使用している場合は、ここに示すステップとは異なる場合があります。
3. インターネット・アクセスの有効化
VMインスタンスの作成ウィザードでは、VMのVCNが自動的に作成されます。ポート8080でのインターネット接続を許可するイングレス・ルールをサブネットに追加します。
次のステップに従って、VCNのパブリック・サブネットを選択し、イングレス・ルールを追加します。
4. Helidonサーバーでのアプリケーションの実行
次に、Ubuntu LinuxインスタンスにHelidonを設定します。
Ubuntuファイアウォールを構成するには、次のステップに従います:
- ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「インスタンス」をクリックします。
- 前のステップで作成したインスタンスへのリンクをクリックします。
「インスタンスの詳細」ページで、「プライマリVNIC」セクションの下を確認します。システムによって作成されたパブリックIPアドレスをコピーします。このIPアドレスを使用してインスタンスに接続します。
- ターミナルまたはコマンド・プロンプト・ウィンドウを開きます。
- パート2で作成した
ssh
暗号化キーを格納したディレクトリに移動します。 - このSSHコマンドを使用してインスタンスに接続します。
ssh -i <your-private-key-file> ubuntu@<x.x.x.x>
インスタンスの作成時に公開キーを特定したため、このコマンドでインスタンスにログインします。
sudo
コマンドを発行して、サーバーをインストールおよび起動できるようになりました。 - ファイアウォール設定を更新します。
Ubuntuファイアウォールはデフォルトで無効になっています。ただし、HTTPトラフィックを許可するように、
iptables
構成を更新する必要があります。次のコマンドを実行します。iptables
。sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 8080 -j ACCEPT sudo netfilter-persistent save
コマンドにより、ポート8080を介したHTTPトラフィックを許可するルールが追加され、変更が
iptables
構成ファイルに保存されます。
- 次のコマンドを実行します。
sudo apt update sudo apt -y install openjdk-11-jdk-headless java -version
.bashrc
でJAVA_HOME
を設定します。ファイルを更新します:
vi .bashrc
ファイルに次のテキストを追加し、ファイルを保存します:
# set JAVA_HOME export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
- 現在のウィンドウで前述のコマンドをアクティブ化します。
source ~/.bashrc
次のコマンドを実行します。
- Mavenをインストールします。
sudo apt -y install maven
- Mavenインストールを検証します。
mvn --version
開始するMavenプロジェクト・テンプレートを作成する次のMaven Archetypeを実行します。このプロジェクトでは、Helidon WebサイトのHelidon MP Quickstartの例を使用します。次のコマンドを実行します。
- Helidon Mavenインストールを実行します。例:
mvn -U archetype:generate -DinteractiveMode=false \ -DarchetypeGroupId=io.helidon.archetypes \ -DarchetypeArtifactId=helidon-quickstart-mp \ -DarchetypeVersion=2.2.1 \ -DgroupId=io.helidon.examples \ -DartifactId=helidon-quickstart-mp \ -Dpackage=io.helidon.examples.quickstart.mp
Archetypeにより、現在のディレクトリの下にMavenプロジェクトが作成されます。出力は次のようになります。
[INFO] Project created from Archetype in dir: /home/ubuntu/helidon-quickstart-mp [INFO] BUILD SUCCESS
helidon-quickstart-mp
ディレクトリに移動します。cd helidon-quickstart-mp
- アプリケーションを構築します。
mvn package
成功メッセージが表示されます。
[INFO] BUILD SUCCESS
- アプリケーションを実行します。
java -jar target/helidon-quickstart-mp.jar
これで、アプリケーションをテストできます。
- 新しいターミナルからSSHキーを使用してUbuntuインスタンスに接続し、コマンドラインで次のように入力します:
curl -X GET http://localhost:8080/greet
または、インスタンスに割り当てられたパブリックIPアドレス(
http://<x.x.x.x>:8080/greet
)にブラウザを接続できます。インスタンスまたはブラウザに
{"message":"Hello World!"}
が表示されます。 - グリーティングの名前を入力します。ターミナルから、次のように入力します:
curl -X GET http://localhost:8080/greet/Mike
または、ブラウザからhttp://<x.x.x.x>:8080/greet/Mikeと入力します。
インスタンスまたはブラウザに
{"message":"Hello Mike!"}
が表示されます。 - グリーティングを更新します。ターミナルから、次のように入力します:
curl -X PUT -H "Content-Type: application/json" -d '{"greeting" : "Aloha"}' http://localhost:8080/greet/greeting
コマンドにより、メッセージのHelloがAlohaに更新されます。
- 更新されたグリーティングをテストします。ブラウザからhttp://<x.x.x.x>:8080/greet/Mikeと入力します。
インスタンスまたはブラウザに
{"message":"Aloha Mike!"}
が表示されます。 - ブラウザで次のコマンドを入力して、ヘルスおよびメトリックを取得します。
http://<x.x.x.x>:8080/health http://<x.x.x.x>:8080/metrics
JSONでメトリックを取得するには、ターミナルから次のように入力します:
curl -H 'Accept: application/json' -X GET http://localhost:8080/metrics
完了しました。Oracle Cloud InfrastructureインスタンスでHelidon MicroProfileサービスを使用して、Hello Worldアプリケーションが正常に作成されました。
参照:
この例の詳細は、『Helidon MP Quickstart』を参照してください
次の手順
Oracle Cloud InfrastructureインスタンスでHelidon MicroProfileサービスを使用して、Hello Worldアプリケーションが正常に作成されました。
Oracle製品を使用した開発の詳細を確認するには、次のサイトを参照してください: