Jenkins の紹介と Docker で Jenkins をデプロイする方法

Jenkins の紹介と Docker で Jenkins をデプロイする方法

1. 関連概念

1.1 Jenkins の概念:

Jenkins は、使用されるプラットフォームに関係なく、プロジェクトの継続的な統合と継続的な配信を可能にする強力なアプリケーションです。あらゆる種類のビルドや継続的インテグレーションを処理できる無料のソース コードです。 Jenkins との統合は、さまざまなテストおよびデプロイメント手法に使用できます。 Jenkins は継続的インテグレーションを可能にするソフトウェアです。

1.2 Jenkinsの目的:

1. ソフトウェア プロジェクトを継続的かつ自動的にビルド/テストします。
2. ソフトウェアの起動プロセスを監視し、問題を迅速に特定して処理し、起動効率を向上させます。

1.3 機能:

CI と CD をサポートするオープンソースの Java 言語開発継続的インテグレーション ツール。

インストール、展開、構成が簡単: yum 経由でインストールすることも、war パッケージをダウンロードして docker コンテナー経由ですばやくインストールおよび展開することもできるため、Web インターフェイスの構成管理が容易になります。

メッセージ通知とテスト レポート: RSS/電子メールを統合し、ビルド結果を RSS 経由で公開したり、ビルドが完了したときに電子メールで通知したり、JUnit/TestNG テスト レポートを生成したりします。

分散ビルド: Jenkins をサポートし、複数のコンピューターで一緒にビルド/テストできるようにします。

ファイル識別: Jenkins は、どのビルドがどの jar を生成するか、どのビルドがどのバージョンの jar を使用するかなどを追跡できます。

豊富なプラグインのサポート: 拡張プラグインをサポートしており、git、svn、maven、docker など、チームに適したツールを開発できます。

1.4 製品リリースプロセス:

  • 製品設計が完了 -> 開発者がコードを開発 -> テスターが機能をテスト -> 運用・保守担当者がリリースと起動
  • 継続的インテグレーション (CI)
  • 継続的デリバリー
  • 継続的なデプロイメント

Docker のデプロイメント

docker run -it --name jenkins --restart always --user root -p 10002:8080 -p 50000:50000 -v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):/usr/bin/docker jenkins

外部Dockerは内部Dockerにマッピングされるため、dockerコマンドはJenkinsコンテナ内でも使用できます。

起動後にランダムなパスワードが設定されることに注意してください。
例:
1e3180604feb492b9ed9af4e418715d7

-it を付けて起動すると、コマンド ウィンドウに表示されます。

もちろん、コンテナに入って /var/jenkins_home/secrets/initialAdminPassword で見つけることもできます。

初めて Web ページを開くときに、このパスワードを入力する必要があります。

入力後、プラグインをインストールするように求められます。私はすべてをインストールすることを選択しました。もちろん、推奨されたものだけをインストールしたり、インストールするプラグインを手動で選択したりすることもできます。

参考: https://hub.docker.com/_/jenkins/

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • DockerFile を使用して Jenkins で Java プロジェクトを自動的にデプロイする方法
  • Docker ベースの Jenkins のデプロイに関する詳細なチュートリアル
  • Docker+Jenkinsを使用して自動的にビルドおよびデプロイする
  • Docker コンテナは Jenkins を使用して Web プロジェクトをデプロイします (概要)
  • Jenkins初心者のためのDockerデプロイメントチュートリアルの詳細な説明

<<:  シンプルなメッセージボードケースを実現するJavaScript

>>:  innodb_flush_method 値メソッド (例の説明)

推薦する

Vue-routerルーティングの使い方

目次1. 説明2. インストール3. テスト1. 説明Vue Router は、Vue.js の公式...

Docker インストール tomcat dubbo-admin インスタンス スキル

1. tomcatイメージをダウンロードする docker pull tomcat:8.5.29 2...

Linuxのアラーム機能の例の説明

Linuxアラーム機能の紹介上記のコード: #include <stdio.h> #in...

MySQL OOM (メモリオーバーフロー) の解決策

OOM は「Out Of Memory」の略で、メモリオーバーフローを意味します。メモリ オーバーフ...

MySQLでテーブルを接続するいくつかの方法

MySQL テーブルでの接続方法は実は非常に簡単なので、ここではその特徴を簡単にリストします。テーブ...

HTML は CSS スタイルと JS スクリプトを動的に読み込みます。例

1. スクリプトを動的に読み込むウェブサイトの需要が高まるにつれて、スクリプトの需要も徐々に増加しま...

Dockerコンテナを停止または強制終了できない問題の解決策

Docker バージョン 1.13.1問題プロセス特定の環境のMySQLコンテナを停止、強制終了、ま...

pagodaを使用してionCube拡張機能をインストールする方法

1. まずパゴダを設置するインストール要件: Python バージョン: 2.6/2.7 (Pago...

JSを使用して画像を効果的に圧縮する方法

目次序文変換関係具体的な実装file2DataUrl(ファイル、コールバック) file2Image...

Vue開発の詳細な説明 ソートコンポーネントコード

目次 <テンプレート> <ul class="コンテナ">...

nginxを使用して取得したIPアドレスが127.0.0.1である問題を解決する

IPツールを取得 lombok.extern.slf4j.Slf4j をインポートします。 org....

よく使われるCSSカプセル化方法の概要

1. pc-reset PCスタイルの初期化 /* 正規化.css */ html{ 行の高さ: 1...

IE における条件付きコメントの利点と欠点

IE の条件付きコメントは、通常の (X)HTML コメントに対する Microsoft 独自の (...

JavaScript でカウントダウン効果を実装する

カウントダウン効果を実現するにはJavascriptを使用します。参考までに、具体的な内容は次のとお...

3つの主要データベース(Mysql、SqlServer、Oracle)の違いについて簡単に説明します。

マイグレーションアドバンテージ:小型、高速、総所有コストが低い、オープンソース。複数のオペレーティン...