Spring Boot Cloud CLI-クイックハンド


読み解く
日常的な開発とテストではSpring Cloudに関連するコンポーネントがあります。例えば、eureka、configserver、zipkin、hystrixdashboardなどは相対的に変更が発生しにくいです。ここではSpring公式が提供している開梱用のSpring Boot Cloud CLIがコマンド一つでこれらのサービスを起動することができます。
Spring Boot Cloud CLIは何ですか?
Spring Boot Cloud CLIの公式はこう説明しています。
Spring Boot CLI provides Spring Boot command line feature s for Spring Cloud.You can write Grooovy scripts to run Spring Cloud component appection s(e.g.@EnbaleekaServer)You can also easure do things like encrypt and decrypt to support Spring Cloud Configs clients with secret configration values.With the Launcher CLI you can launch services Eurka,Zipkin,Config therfuntractrol
翻訳後:
SprigbootcliはSprigCloudのためにSprigbootコマンドライン機能を提供します。groovyスクリプトを作成してSpring Cloudコンポーネントアプリケーションを実行できます。また、機密設定値のSpringCloud設定クライアントをサポートするために、暗号化や復号などの動作も簡単に実行できます。ランチャーcliを使用して、eureka、zipkin、config serverなどのサービスをコマンドラインから簡単に起動できます。
Spring Boot Cloud CLIはどう使いますか?
最新バージョンは2.2.0.BUILD-NAPSHOTです。バージョン依存の問題で運転中に問題がありました。バージョンを変更しました。
  • Spring CLI v 1.5.18 RELEASEクリックしてダウンロードしたもっと多いバージョンは
  • を調べます。
  • Spring Coud CLI v 1.3.2.RELEASE
  • 1、設置:
    1.1 Spring CLIを先に取り付ける必要がある場合の例:
    まず先ほどダウンロードしたSpring CLI v 1.5.18 RELEASEを解凍して、次のようにコマンドを設定します。
    export PATH=${PATH}:/spring-boot-cli-1.5.18.RELEASE/bin
    windows:
    set PATH=D:\spring-boot-cli-1.5.18.RELEASE\bin;%PATH%
    詳細なインストール方法は公式文書を参照してください。
    インストールが成功したかどうかを確認します。
    spring --version
    1.2 Spring Coud CLIの取り付け
    コマンドは以下の通りです
    spring install org.springframework.cloud:spring-cloud-cli:1.3.2.RELEASE
    インストールが成功したかどうかを確認します。
    spring cloud --version
    2、運行サービス
    開発中のSpring Cloud Servicesを実行します。Launcher CLIは、コマンドラインからEureka、Config Serverなどの通常サービスを実行するために使用できます。実行可能なサービスの一覧が表示され、標準サービスのspring cloudのみが起動されます。展開するサービスを選択するには、コマンドラインにそれらをリストするだけでいいです。例えば、
     spring cloud eureka configserver h2 zipkin
    サポートされている展開可能なサービスの概要:
    サービス
    Name
    Address
    Description
    eureka
    Eureka Server
    http://localhost:8761
    Eurekaサーバーはサービス登録と発見に使用されます。
    configserver
    Config Server
    http://localhost:8888
    サービスを設定し、ローカルディレクトリから構成を提供します。
    h 2
    H 2 Database
    http://localhost:9095 (consolie)、jdbc:h 2:tcp://localhost:9096/{data}
    h 2データベース
    kafka
    Kafka Broker
    http://localhost:9091 (actuat or endpoints)、local host:9092
    hystrixdashboard
    Hystrix Dashboard
    http://localhost:7979
    遮断器
    dataflow
    Dataflow Server
    http://localhost:9393
    zipkin
    Zipkin Server
    http://localhost:9411
    可視化のためのトレース
    stubrunner
    Stub Runner Boot
    http://localhost:8750
    ヘルプを取得
    spring help cloud
    これらのアプリケーションは、同じ名前のローカルYAMLファイル(現在の作業ディレクトリまたは「config」またはその中のサブディレクトリ)で構成されています。例えば、configserver.ymlは、バックエンドのローカルgitストレージを見つけるために、このようなことをしたいかもしれません。
    spring:
      profiles:
        active: git
      cloud:
        config:
          server:
            git:
              uri: file://${user.home}/dev/demo/config-repo
    3、他のアプリケーションを追加する
    自分で定義したプログラムをconfigディレクトリに追加することができます。例えば:/config/my-cloud.yml
    spring:
      cloud:
        launcher:
          deployables:
            source:
              coordinates: maven://com.example:source:0.0.1-SNAPSHOT
              port: 7000
            sink:
              coordinates: maven://com.example:sink:0.0.1-SNAPSHOT
              port: 7001
    あなたが使う時
    spring cloud --list
    を選択します
    source sink configserver dataflow eureka h2 hystrixdashboard kafka stubrunner zipkin
    4、Groovyスクリプトの作成とアプリケーションの実行
    Spring Coud CLIは、ほとんどのSpring Coudステートメント機能、例えば@Enbale*コメントクラスをサポートしています。例えば、Eurekaサーバーの機能が充実しています。
    app.groovy
    @EnableEurekaServer
    class Eureka {}
    コマンドラインから実行できます。次のようになります。
    spring run app.groovy
    他の依存項を含めるには、通常は適切なイネーブルメントのコメントを追加すればよく、例えば@EnbaleConfigServer、@EnbaleOAuth 2 Ssoまたは@EnbaleeurekaCient。依存項を手動で含めるには、@Grab特殊な「Spring Boot」ショートスタイルのワーク座標を使用してもいいです。すなわちワークIDのみを使用します。例えば、クライアントアプリケーションを設定して、AMQPがSpring CLoud Busからの管理活動を解決します。ap.groovy
    @Grab('spring-cloud-starter-bus-amqp')
    @RestController
    class Service {
      @RequestMapping('/')
      def home() { [message: 'Hello'] }
    }
    5、暗号化と復号
    Spring Cloud CLIには「暗号化」と「復号」コマンドがあります。両者は同じ形式のパラメータを受け取り、キーを必要な「--key」に指定します。
    $ spring encrypt mysecret --key foo
    682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda
    $ spring decrypt --key foo 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda
    mysecret
    鍵をファイルに使用するには、鍵の値の前に「@」を付けてファイルパスを提供してください。
    $ spring encrypt mysecret --key @ $ {HOME} 
    /.ssh / id_rsa.pub AQAjPgt3eFZQXwt8tsHAVv / QHiY5sI2dRcR + ...
    参考資料
    getting-started-innstalling-the-cliSpring Boot Cloud CLI