2017-04-05 5 views
-1

金融アプリケーション用のJavaベースの高可用性サービスを構築しています。私はJenkinsを使って継続的な統合を管理するチームの一員です。JenkinsとDockerを使用した継続的な導入

最近、私たちはリストにも継続的な導入を導入し、Dockerコンテナを選択しました。

  • カサンドラ
  • nginxのWildflyの

    • 3インスタンス:

      生産クラスタが3台のRHELマシンは、それらのそれぞれに、次のドッキングウィンドウコンテナを実行している必要があります。ここでは

      は、インフラストラクチャであります

    アプリケーションIDEはNetbeansでソースコードはgit。

    現在、このインフラストラクチャでは手動で展開しています。

    Jenkinsで継続的な展開プロセスを完了するために使用するいくつかのツールを教えてください。

  • 答えて

    0
    • jenkinsリポジトリへのプッシュごとにジェンキンをトリガしたい場合があります。 Webhookでこれを行うのに役立つプラグインがあります。 Gitlab-pluginは、Githubと他のgitソリューションのための類似のソリューションです。
    • bashとjenkinsの設定に大きく依存するのではなく、jenkins pipelineにjenkinsパイプラインプラグインを設定するか、pipeline: multibranch pluginを設定することができます。これらを使用すると、リポジトリ内のgroovyコード(jenkinsfile)でビルドを自動化することができ、他のプラグインを使って機能を追加することができます。
    • これで、ドッカーパイプラインプラグインを使用して、ドッカーコンテナを簡単に構築し、ドッカーイメージをプッシュし、ドッキングコンテナ内でコードを実行できます。
    • 私はあなたのジェンキンマシンにインストールされているすべての依存関係(したがって矛盾するバージョン)がないように、ドッカー内でサービスを構築することをお勧めします。すべての依存関係を持つdockerコンテナを使用し、そこにgroovyのdockerパイプライン・プラグインを使用してビルド・コードを実行します。
    • ドッキング画像をプッシュしてプルするレジストリソリューションをインストールします。
    • Pipeline: Shared Groovy Librariesを使用して、ライブラリをjenkinsファイルから抽出して再利用できるようにします。これらのライブラリファイルには、あなたのジェンキンが知っている最新の状態のリポジトリが必要です。おそらく、jenkinsfileにパラメータを追加するだけで、複数のプロジェクト間でパイプラインプロセス全体を共有することさえできます。

    多くのテキストと例はありません。興味深いと思ったら、いくつかのコードを見たいと思うだけです。私は現在、これをすべて設定しています。

    +0

    返信いただきありがとうございます。私の理解はパイプラインを実行することです、私はジェンキンノードとしてターゲットマシンを作る必要があります。これは正しいです? JockkinsのマスターにDockerをインストールする必要がありますか? –

    +0

    あなたが私たちを導くことができるなら、それは非常に役に立つでしょう。ほとんどの場合、私は企業プロキシの背後にあるために問題に直面しています。私は非常にセットアップがどのように動作するのか見て興味があるでしょう投稿に貢献することもあります –

    +0

    ドッカーコマンドを実行するジェンキンマシンには、ドッカーをインストールする必要があります。ターゲットマシンはゲンキンとは関係ありません。あなたは、ジェンキンから新しく造られたイメージを引っ張り、ドッカーコンテナを走らせることができます。 – herm

    関連する問題