5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

IBM Cloud ShellでQuarkusを試してみよう

Last updated at Posted at 2020-06-23

この記事は、これからQuarkusを始める方を対象に、IBM Cloudで提供しているIBM Cloud Shellを使ってQuarkus.ioのFirstStartの手順を実行するためのガイドです。
###Cloud Shellとは
IBM Cloud Shell はクラウドのメニュー(アイコン)からコンソールに即時アクセスが可能です。
2020年10月現在、主に以下の機能をリリースしています。
・50時間利用/週
・ストレージ500 MB/User
・ファイルのアップロード、ダウンロード処理
・アプリのプレビュー
詳細、最新情報はIBM Cloud Docsをご確認ください
image.png

###QUARKUS GET STARTED
オリジナルの記事はこちらのQUARKUS - CREATING YOUR FIRST APPLICATIONです。
https://quarkus.io/get-started/
こちらのガイドに習い、IBM Cloud Shellの実行手順に編集しています。
今回、紹介する範囲はQuarkusアプリケーションの起動、修正、実行結果の確認の手順になります。
image.png

###IBM Cloud からCloudShellを起動
・IBM CloudにLoginします。
 アカウントをお持ちでない方は、こちらからご登録ください。登録にはe-Mailアドレスが必要です。
 この手順はライトアカウントで実施可能です。(2020年6月時点)
・Cloud Shellを起動します。
image.png
・今回、Cloud Shellで3つのSessionを使用します。Sessionは+ボタンで追加できます。Cloud Shellでは最大5つのSessionまで使用できます。
image.png
-Session1:Quarkus環境構築
-Session2:curlコマンド実行
-Session3:File編集

###Step1: サンプルコードの実行
行または$ごとにクリップボードにコピー、Cloud Shellにペーストして進めてください。

####1. Gitクローン

git clone https://github.com/quarkusio/quarkus-quickstarts.git

####2. ディスクの使用量を確認

df
image.png #### 3.Maven Projectを作成 ``` mvn io.quarkus:quarkus-maven-plugin:1.13.4.Final:create \ -DprojectGroupId=org.acme \ -DprojectArtifactId=getting-started \ -DclassName="org.acme.getting.started.GreetingResource" \ -Dpath="/hello" ``` image.png #### 4.ディレクトリを移動し、内容を確認 ``` cd quarkus-quickstarts ``` ``` cd getting-started ``` ``` ls ``` image.png ####5.ファイルの内容を確認 ``` cat pom.xml ``` ``` cat src/main/java/org/acme/getting/started/GreetingResource.java ``` image.png *pomファイルにはquarkus-maven-plaginなどが設定されています。 image.png *GreetingResource.javaにはこのようなコードが生成されます。 ####6.Quarkusを起動 ``` ./mvnw compile quarkus:dev: ``` image.png 起動できました! 続いて、Session2を追加します。

####7.cUrlでコードを実行(Session2)

curl -w "\n" http://localhost:8080/hello

*Sessionが切れてしまった場合は、Quarkusを再度起動します。

image.png 戻り値として”Hello”が表示されました! 

ブラウザでも確認してみましょう。
右上の目のアイコンから8080ポートを選択してみましょう。

続いて、Session3を追加します。

###Step2: コードの修正
####1.ディレクトリの確認と移動(Session3)

cd quarkus-quickstarts
cd getting-started

####2.ディレクトリーの移動とファイルのコピー、確認

cd src/main/java/org/acme/getting/started
cp GreetingResource.java GreetingService.java
image.png ####3.編集ファイルの確認(表示) ``` cat GreetingService.java ``` image.png ↓次で内容を編集します。↓

####4.GreetingServiceファイルの編集
エディタをお持ちの方は、IBM Cloud Shell右上の矢印ボタンでファイルのダウンロード/アップロードも可能です。
お手元のエディタで編集して、ファイルを更新していただくこともできます。アップロードファイルはログインアカウント直下のディレクトリに配置されますので、適宜移動してください。

nano GreetingService.java

(編集用ウィンドウが開く)以下の内容に編集(または置換)

package org.acme.getting.started;

import javax.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class GreetingService {

    public String greeting(String name) {
        return "hello " + name;
    }

}

ファイル編集後、Exit → Y → To Files → GreetingService.java → Ent で閉じる
image.png
編集後のファイルを表示して確認

cat GreetingService.java

####5.GreetingResourceファイルの編集
同様の手順でGreetingResourceファイルを以下の内容に編集

cat GreetingResource.java
nano GreetingResource.java

(編集用ウィンドウが開く)以下の内容に編集(または置換)

package org.acme.getting.started;

import javax.inject.Inject;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.jboss.resteasy.annotations.jaxrs.PathParam;

@Path("/hello")
public class GreetingResource {

    @Inject
    GreetingService service;

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    @Path("/greeting/{name}")
    public String greeting(@PathParam String name) {
        return service.greeting(name);
    }

    @GET
    @Produces(MediaType.TEXT_PLAIN)
    public String hello() {
        return "hello";
    }
}

ファイル編集後、Exit → Y → To Files → GreetingResource.java → Ent で閉じる
編集後のファイルを表示して確認

cat GreetingResource.java 

6.cUrlでコードを実行(Session2)

curl -w "\n" http://localhost:8080/hello
curl -w "\n" http://localhost:8080/hello/greeting/quarkus
curl -w "\n" http://localhost:8080/hello/greeting/'半角英数任意の文字列(’は不要)'
image.png

それぞれ、ブラウザでも確認してみましょう。
スクリーンショット 2020-10-28 12.21.10.png

IBM Cloud ShellでQuarkusのお試しは以上になります。
最後まで読んでいただきありがとうございました。
おつかれさまでした!

5
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?