Azure Toolkit for Eclipse を使用して Web アプリを Docker コンテナーとして発行するPublish a web app as a Docker container by using the Azure Toolkit for Eclipse

Docker コンテナーは、Web アプリケーションをデプロイするための広範に使用されている方法です。Docker containers are a widely used method for deploying web applications. Docker コンテナーを使用すると、開発者はすべてのプロジェクト ファイルおよび依存関係を、サーバーにデプロイするための 1 つのパッケージに統合できます。By using Docker containers, developers can consolidate all their project files and dependencies into a single package for deployment to a server. Azure Toolkit for Eclipse は、Microsoft Azure にデプロイするための [Docker コンテナーとして発行] 機能を追加することによって、Java 開発者のこのプロセスを簡略化します。The Azure Toolkit for Eclipse simplifies this process for Java developers by adding Publish as Docker Container features for deployment to Microsoft Azure. この記事では、アプリケーションを Docker コンテナーとして Azure に発行するために必要な手順について説明します。This article walks you through the steps required to publish your applications to Azure as Docker containers.

注意

Docker の詳細については、Docker の Web サイトを参照してください。More information about Docker is available on the Docker website.

前提条件Prerequisites

この記事の手順を完了するには、Azure Toolkit for Eclipse をインストールする必要があります。これには、次のソフトウェア コンポーネントが必要です。To complete the steps in this article, you will need to install the Azure Toolkit for Eclipse, which requires the following software components:

注意

Eclipse Marketplace の Azure Toolkit for Eclipse に関するページに、このツールキットと互換性のあるビルドが一覧表示されています。The Azure Toolkit for Eclipse page at the Eclipse Marketplace lists the builds that are compatible with the toolkit.

Docker コンテナーを使用して Web アプリを Azure に発行するPublish your web app to Azure by using a Docker container

  1. Eclipse で、Web アプリ プロジェクトを開きます。Open your web app project in Eclipse.

  2. [Docker コンテナーとして発行] ウィザードを起動するには、次のいずれかを実行します。To start the Publish as Docker Container wizard, do either of the following:

    • [ナビゲーター] ビューで、プロジェクトを右クリックし、 [Azure] をクリックしてから [Docker コンテナーとして発行] をクリックします。In the Navigator view, right-click your project, click Azure, and then click Publish as Docker Container.

      ナビゲーター ビューの [Docker コンテナーとして発行] コマンド

    • Eclipse ツールバーの [発行] ボタンをクリックしてから、 [Docker コンテナーとして発行] をクリックします。On the Eclipse toolbar, click the Publish button, and then click Publish as Docker Container.

      Eclipse ツールバーの [Docker コンテナーとして発行] コマンド

    [Deploy Docker Container on Azure] (Azure への Docker コンテナーのデプロイ) ウィザードが開きます。The Deploy Docker Container on Azure wizard opens.

    [Deploy Docker Container on Azure] (Azure への Docker コンテナーのデプロイ) ウィザード

  3. [Type image name, select artifact's path and check Docker host to be used] (イメージ名を入力し、アーティファクトのパスを選択して、使用される Docker ホストを確認する) ウィンドウで、以下の手順を実行します。In the Type an image name, select the artifact's path and check a Docker host to be used window, do the following:

    a.a. [Docker image name] (Docker イメージ名) ボックスに、Docker ホストの一意の名前を入力します。In the Docker image name box, enter a unique name for your Docker host. (このウィザードでは名前が自動的に作成されますが、それは変更できます)。(The wizard automatically creates a name, but you can modify it.)

    b.b. [ホスト] 領域には、既に作成しているすべての Docker ホストが表示されます。The Hosts area displays any Docker hosts that you have already created. 次のいずれかを実行します。Do either of the following:

    • 既存の Docker ホストがある場合は、それに Web アプリをデプロイできます。If you have an existing Docker host, you can deploy your web app to it.

    • 新しい Docker ホストを作成するには、 [追加] をクリックします。To create a new Docker host, click Add.

      [Create Docker Host] (Docker ホストの作成) ダイアログ ボックスが開きます。The Create Docker Host dialog box opens.

    [Deploy Docker Container on Azure] (Azure への Docker コンテナーのデプロイ) ウィザード

  4. [Configure the new virtual machine] (新しい仮想マシンの構成) ウィンドウで、Docker ホストの次のオプションを指定します。In the Configure the new virtual machine window, specify the following options for your Docker host. (このウィザードではほとんどのオプションが自動的に生成されますが、いずれのオプションも変更できます)。(The wizard automatically generates most of the options for you, but you can modify any of them.)

    a.a. [名前] :Docker ホストの一意の名前を入力します。Name: Enter a unique name for the Docker host. (これは前に指定した Docker イメージの名前と同じではありません)。(It is not the same as the Docker image name that you specified earlier.)

    b.b. サブスクリプション:ホストに使用する Azure サブスクリプションを入力します。Subscription: Enter the Azure subscription that you use for your host.

    c.c. [リージョン] :ホストが配置される地理的リージョンを入力します。Region: Enter the geographical region where your host is located.

    d.d. [Host OS and Size] (ホスト OS とサイズ) タブ:On the Host OS and Size tab:

    • [Host OS](ホスト OS) :ホストがある仮想マシンのオペレーティング システムを入力します。Host OS: Enter the operating system for the virtual machine that contains your host.
    • [サイズ] :ホストの仮想マシンのサイズを入力します。Size: Enter the virtual-machine size for your host.

    e.e. [リソース グループ] タブ:On the Resource Group tab:

    • [新しいリソース グループ] :ホストの新しいリソース グループを作成します。New resource group: Create a new resource group for your host.
    • 既存のリソース グループ:Azure アカウントの既存のリソース グループを入力します。Existing resource group: Enter an existing resource group from your Azure account.

    f.f. [ネットワーク] タブ:On the Network tab:

    • [新しい仮想ネットワーク] :ホストの新しい仮想ネットワークを作成します。New virtual network: Create a new virtual network for your host.
    • [既存の仮想ネットワーク] :Azure アカウントの既存の仮想ネットワークを入力します。Existing virtual network: Enter an existing virtual network from your Azure account.

    g.g. [ストレージ] タブ:On the Storage tab:

    • [新しいストレージ アカウント] :ホスト用に新しいストレージ アカウントを作成します。New storage account: Create a new storage account for your host.
    • 既存のストレージ アカウント:Azure アカウントの既存のストレージ アカウントを入力します。Existing storage account: Enter an existing storage account from your Azure account.
  5. [次へ] をクリックします。Click Next.

  6. [Configure log in credentials and port settings] (ログイン資格情報とポート設定の構成) ウィンドウで、次のいずれかのオプションを選択します。In the Configure log in credentials and port settings window, select one of the following options:

    • [Import credentials from Azure Key Vault](Azure Key Vault からの資格情報のインポート) : Azure サブスクリプションに格納されている、以前に保存された一連の資格情報を指定します。Import credentials from Azure Key Vault: Specifies a previously saved set of credentials that are stored in your Azure subscription.

    注意

    特定のアカウントまたはサービス プリンシパルで作成された Azure Key Vault は、サブスクリプションを共有する別のアカウントまたはサービス プリンシパルから自動的にアクセスできるようにはなりません。An Azure Key Vault that's created with a specific account or service principal is not automatically accessible by another account or service principal that shares the subscription. 別のアカウントまたはサービス プリンシパルが Key Vault を使用できるようにするには、Azure Portal を使用して、アカウントまたはサービス プリンシパルを追加する必要があります。To allow another account or service principal to use the Key Vault, you must use the Azure portal to add the account or service principal.

    • [New log in credential](新しいログイン資格情報) : 新しい一連のログイン資格情報を作成します。New log in credentials: Creates a new set of login credentials. このオプションを選択する場合は、次の操作を行います。If you select this option, do the following:

      • [VM Credentials] (VM 資格情報) タブで、Docker ホストの仮想マシン ログイン資格情報の次のいずれかのオプションを選択します。On the VM Credentials tab, choose one of the following options for the virtual-machine login credentials of your Docker host:

        • [ユーザー名] : 仮想マシン ログイン資格情報のユーザー名を入力します。Username: Enter the username for your virtual machine login credentials.

        • [パスワード][確認] : 仮想マシン ログイン資格情報のパスワードを入力します。Password and Confirm: Enter the password for your virtual machine login credentials.

        • SSH:Docker ホストの Secure Shell (SSH) 設定を入力します。SSH: Enter the Secure Shell (SSH) settings for your Docker host. 次のオプションから選択できます。You can choose from the following options:

          • なし:仮想マシンが SSH 接続を許可しないことを指定します。None: Specifies that your virtual machine will not allow SSH connections.
          • [自動生成] : SSH 経由で接続するために必要な設定を自動的に作成します。Auto-generate: Automatically creates the requisite settings for connecting via SSH.
          • [Import from directory](ディレクトリからインポート) : 以前に保存された一連の SSH 設定を含むディレクトリを指定します。Import from directory: Specifies a directory that contains a set of previously saved SSH settings. このディレクトリには、次の 2 つのファイルが含まれている必要があります。The directory must contain the following two files:
            • [id_rsa] : ユーザーの RSA ID が含まれます。id_rsa: Contains the RSA identification for a user.
            • [id_rsa.pub] :認証に使用される RSA 公開キーが含まれます。id_rsa.pub: Contains the RSA public key that is used for authentication.

          [Create Docker Host] (Docker ホストの作成)

      • [Docker Daemon Credentials] (Docker デーモン資格情報) タブで、次のオプションを指定します。On the Docker Daemon Credentials tab, specify the following options:

        • [Docker デーモン ポート] : Docker ホストの固有の TCP ポートを入力します。Docker Daemon port: Enter the unique TCP port for your Docker host.

        • [TLS セキュリティ] : Docker ホストのトランスポート層セキュリティ設定を入力します。TLS Security: Enter the Transport Layer Security settings for your Docker host. 次のオプションから選択できます。You can choose from the following options:

          • なし:仮想マシンが TLS 接続を許可しないことを指定します。None: Specifies that your virtual machine will not allow TLS connections.
          • [自動生成] : TLS 経由で接続するために必要な設定を自動的に作成します。Auto-generate: Automatically creates the requisite settings for connecting via TLS.
          • [Import from directory](ディレクトリからインポート) : 以前に保存された一連の TLS 設定を含むディレクトリを指定します。Import from directory: Specifies a directory that contains a set of previously saved TLS settings. 具体的には、ディレクトリには次の 6 つのファイルが含まれている必要があります。More specifically, the directory must contain the following six files:
            • [ca.pem][ca-key.pem] : TLS 証明機関の証明書と公開キーが含まれます。ca.pem and ca-key.pem: Contain the certificate and public key for the TLS Certificate Authority.
            • [cert.pem][key.pem] : TLS 認証に使用されるクライアント証明書と公開キーが含まれます。cert.pem and key.pem: Contain the client certificate and public key that is used for TLS authentication.
            • [server.pem][server-key.pem] : ホストのサーバー証明書と公開キーが含まれます。server.pem and server-key.pem: Contain the server certificate and public key for the host.

          [Create Docker Host] (Docker ホストの作成)

  7. 上記の情報をすべて入力したら、 [完了] をクリックします。After you have entered all of the preceding information, click Finish.

  8. [Deploy Docker Container on Azure] (Azure への Docker コンテナーのデプロイ) ウィザードで、 [次へ] をクリックします。In the Deploy Docker Container on Azure wizard, click Next.

    [Deploy Docker Container on Azure] (Azure への Docker コンテナーのデプロイ) ウィザード

  9. [Configure the Docker container to be created] (作成される Docker コンテナーの構成) ウィンドウで、以下の手順を実行します。In the Configure the Docker container to be created window, do the following:

    a.a. [Docker container name] (Docker コンテナー名) ボックスに、Docker コンテナーの一意の名前を入力します。In the Docker container name box, enter a unique name for your Docker container.

    b.b. 次のいずれかの Docker イメージを選びます。Choose one of the following Docker images:

    • [Predefined Docker image](定義済みの Docker イメージ) : Azure の既存の Docker イメージを指定します。Predefined Docker image: Specifies a pre-existing Docker image from Azure.

      注意

      このボックス内の Docker イメージの一覧は、アーティファクトが自動的にデプロイされるように Azure Toolkit が修正する複数のイメージで構成されています。The list of Docker images in this box consists of several images that the Azure Toolkit has been configured to patch so that your artifact is deployed automatically.

    • カスタム Dockerfile: ローカル コンピューターから以前に保存された Dockerfile を指定します。Custom Dockerfile: Specifies a previously saved Dockerfile from your local computer.

      注意

      これは、独自の Dockerfile をデプロイする開発者向けのより高度な機能です。This is a more advanced feature for developers who want to deploy their own Dockerfile. ただし、Dockerfile が正しく構築されていることを確認するのは、このオプションを使用する開発者の責任です。However, it is up to developers who use this option to ensure that their Dockerfile is built correctly. Azure Toolkit はカスタム Dockerfile 内のコンテンツを検証しないため、Dockerfile に問題がある場合はデプロイが失敗することがあります。The Azure Toolkit does not validate the content in a custom Dockerfile, so the deployment might fail if the Dockerfile has issues. さらに、Azure Toolkit はカスタム Dockerfile に Web アプリ アーティファクトが含まれていることを期待し、また HTTP 接続を開こうとします。In addition, the Azure Toolkit expects the custom Dockerfile to contain a web app artifact, and it will attempt to open an HTTP connection. 開発者が別の種類のアーティファクトを発行した場合は、デプロイ後に無害のエラーが表示されることがあります。If developers publish a different type of artifact, they may receive innocuous errors after deployment.

    c.c. [ポートの設定] :Docker コンテナーの固有の TCP ポート バインドを入力します。Port settings: Enter the unique TCP port binding for your Docker container.

    [Configure the Docker container to be created] (作成される Docker コンテナーの構成) ウィンドウ

  10. 上記の手順をすべて完了したら、 [完了] をクリックします。After you have completed all of the preceding steps, click Finish.

Azure Toolkit が Docker コンテナーでの Azure への Web アプリのデプロイを開始します。The Azure Toolkit begins deploying your web app to Azure in a Docker container.

次の手順Next steps

Docker の他のリソースについては、公式の Docker の Web サイトを参照してください。For additional resources for Docker, see the official Docker website.

バグを報告したり、新機能をリクエストしたりするには、当社の GitHub リポジトリで問題を作成してください。To report bugs or request new features, create issues on our GitHub repository. または、Stack Overflow でタグ azure-java-tools を使用して質問してください。Or, ask questions on Stack Overflow with tag azure-java-tools.

Azure での Java の使用方法の詳細については、以下のリンクを参照してください。For more information about using Java with Azure, see the following links: