Linux container


前提条件

  • 事前に Tunaclo AC サービスにお申込みください。
  • Linux の仮想マシン(VM)をご用意ください。
  • VM には予め Docker をインストールください。( Docker公式

システムの構成

Quick start system structure

本クイックスタートでは以下の流れとなります。

Step 1. Web サーバーの準備
Step 2. Tunaclo AC ポータルへログイン
Step 3. クライアントの作成
Step 4. サービスの作成
Step 5. ルートの作成
Step 6. Agent の起動
Step 7. 接続テスト
Step 8. クリーンアップ

Step 1. Web サーバーの準備

まずは、VM 上に Web サーバーを立てましょう。ここでは NGINX のコンテナを用いて Port 80番で起動します。

$ docker run -d --name nginx -p 8000:80 nginx

以下のように localhost:8000 にアクセスします。

$ curl http://localhost:8000

正常に起動できていれば、以下の様な NGINX の応答が返されます。

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

Step 2. Tunaclo AC ポータルへログイン

ブラウザから下記リンクにアクセスしてください。
https://portal.tunaclo.jp.fujitsu.com/login

以下の画面が表示されますので、お申込み頂いた Project 名を入力してください。

login project

以下の画面が表示されますので、お申込み頂いたユーザー名、パスワードを入力してログインしてください。

login keycloak

Step 3. クライアントの作成

Step 2. でログインに成功すると以下のようなルート一覧画面が表示されるので、[New Route] ボタンをクリックします。

Click new route

ルート作成画面に遷移するので、[New client] ボタンをクリックしてクライアントを作成します。

Create new client

クライアントの新規作成では、クライアント名を指定します。
Client name には Project 内で一意なクライアント名をつけます、ここでは MyClient を設定します。

Client create panel

入力が完了したら [Create client] をクリックしてクライアントを作成しましょう。

Step 4. サービスの作成

クライアントの作成が完了したら、次はサービスを作成しましょう。

新規ルート作成画面から、[New service] ボタンをクリックしてサービスを作成します。

Create new service

サービスの新規作成では、サービス名とサービスのアクセス先として、Service URLVirtual URL のペアを指定します。

Service create panel

Service name には Project 内で一意なサービス名を付けます、ここでは MyService を設定します。
Virtual URL はクライアントから Service URL で指定するサービスにアクセスするためのURLです。ここでは “http://127.0.0.1:30000” とします。
Service URL には公開したい NGINX サービスである “http://{NGINXが起動するマシンのIPアドレス}:8000” を指定します。
Grant accessing subdirs は指定した Service URL を含むサブディレクトリーへのアクセスを許容します。ここではチェックを入れたままにします。

入力が完了したら [Create service] をクリックしてサービスを作成しましょう。

今回のシステム構成では、Back Agent と NGINX は Docker コンテナとして起動しています。
この場合、Service URL に localhost127.0.0.1 を指定すると Back Agent からアクセスできません。そのため、{NGINXが起動するマシンのIPアドレス} にはご用意した VM の IP アドレスを指定ください。

Step 5. ルートの作成

作成したクライアント MyClient と サービス MyService をつなぐ許可を設定します(Tunaclo AC ではこれをルートと呼びます)。

新規ルート作成画面にて、作成した MyClient および MyService を選択した状態で [Create route] ボタンをクリックしてルートを作成しましょう。

Create route

ルートを作成すると一覧画面に作成したルートが表示されています。作成したルートをクリックして詳細を表示させてみましょう。

Open route details

作成したルートの設定情報、およびシステムから払い出された ID や Key 情報などを参照できます。

confirm id and key info

Step 6. Agent の起動

Agent の起動にあたり、ご契約時に提供されているガイドに従い最新のコンテナ版 Agent をダウンロードください。

クライアント側(Front Agent)、サービス側(Back Agent)の順で以下のように起動してみましょう。

  • クライアント側

    Front agent command

    ルート詳細画面でサービス側(Front Agent)の起動コマンドが用意されています。[Copy to clipboard] をクリックしてコピーしておきます。
    VM にログインして、以下のコマンドを実行します。

    $ [コピーした Front Agent の起動コマンドを貼り付けて実行してください (docker run -d ...) ]
    
  • サービス側

    Back agent command

    ルート詳細画面でサービス側(Back Agent)の起動コマンドが用意されています。[Copy to clipboard] をクリックしてコピーしておきます。
    VM にログインして、以下のコマンドを実行します。

    $ [コピーした Back Agent の起動コマンドを貼り付けて実行してください (docker run -d ...) ]  
    

Agent を PROXY 環境下で起動する場合は、以下のページもご参考ください。

PROXY 環境下で Agent を起動する(コンテナ版)

Agents are connected
Front Agent および Back Agent の起動に成功すると、作成したルートを囲う枠の色が灰色から緑色(Agent と Tunaclo AC ルータ―が接続された状態)に変わっていることが分かります。

Step 7. 接続テスト

クライアント側で curl などを用いて http://127.0.0.1:30000 にアクセスすると Tunaclo AC 経由で Web サーバに接続できます。

$ curl http://127.0.0.1:30000
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

接続に失敗する(NGINX の応答が返ってこない)場合は、以下のトラブルシューティングガイドもご参考ください。

トラブルシューティング

PROXY 環境下で curl コマンドを実行する場合は、以下のページもご参考ください。

PROXY 環境下でcurlコマンドを実行する

Step 8. クリーンアップ

以下の手順に従い、クイックスタートで作成したリソースを削除します。

  • Agent および Web サーバの停止と削除
  • ルートの削除
  • サービスの削除
  • クライアントの削除
Agent および Web サーバの停止と削除

Docker コンテナで作成した Agent と Web サーバを削除します。
それぞれ以下の手順を実施してください。

  • クライアント側

    $ docker stop MyClient-agent
    $ docker rm MyClient-agent
    
  • サービス側

    $ docker stop MyService-agent
    $ docker rm MyService-agent
    
  • Webサーバ

    $ docker stop nginx
    $ docker rm nginx
    
ルートの削除

Click route trash icon

Tunaclo AC ポータルにアクセスし、ルート一覧画面のごみ箱アイコンをクリックします。確認ダイアログが出るので [Delete route] をクリックして削除します。

サービスの削除

Click service trash icon

新規ルート作成画面にて、MyService を選択のうえごみ箱アイコンをクリックします。確認ダイアログが出るので [Delete service] をクリックして削除します。

クライアントの削除

Click client trash icon

新規ルート作成画面にて、MyClient を選択のうえごみ箱アイコンをクリックします。確認ダイアログが出るので [Delete client] をクリックして削除します。

以上で、クリーンアップは終了です、お疲れ様でした。

次へ