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 値メソッド (例の説明)

推薦する

Dockerのセキュリティについて Docker-TLS暗号化通信の問題

目次1. Dockerのセキュリティ問題2. Dockerアーキテクチャの欠陥とセキュリティメカニズ...

Node.js のワーカー スレッドの詳細な理解

目次概要Node.js における CPU バウンド アプリケーションの歴史CPUを集中的に使用する操...

シェルスクリプトを使用して CentOS7 に python3.8 環境をインストールする (推奨)

ワンクリック実行仮想マシンに Python 3.8 をインストールするには、ネットワーク アダプター...

Mac に mysql5.7 をインストールするための完全な手順 (画像とテキスト付き)

最近、Mac システムを使用して、ローカル Web サーバー環境を構築する準備をしていました。 Ma...

HTML における <meta> タグの使用に関する詳細な説明

私たちが作成する Web ページでは、より多くの人々に訪問してもらいたい場合、検索エンジンを使用して...

Linuxファイルを表示するコマンドの詳細な説明

Linuxファイルを表示する方法ファイルの内容を表示するコマンド: catは最初の行からコンテンツを...

MYSQL の 10 の典型的な最適化ケースとシナリオ

目次1. SQL最適化の一般的な手順1. SQL実行計画の分析を説明する2. プロフィール分析を表示...

JavaScript es6 の新しい配列メソッドの詳細な説明

目次1. 各() 2. arr.filter() 3. arr.every() 4. arr.map...

重複したMySQLレコードを現場でチェックし、処理する実践的な記録

目次序文分析するデータ合計繰り返し率どこにあるかと持っているかの違い要約する序文私はソフトウェアの導...

MySQLのCOUNT(*)のパフォーマンスについてお話しましょう

序文基本的に、職場のプログラマーは、count(*)、count(1)、または count(prim...

Linux でリモートから MySQL を自動的にバックアップする方法

序文:基本的に、自社で使用する場合でも、顧客向けにサーバーを展開する場合でも、MySQL のバックア...

JS 非同期実行の原則とコールバックの詳細

1. JSの非同期実行の原則JavaScript はシングルスレッドですが、ブラウザはマルチスレッド...

mysql 8.0.19 winx64.zip インストール チュートリアル

この記事は参考までにmysql 8.0.19 winx64.zipのインストールチュートリアルを記録...

js における関数のネストとクロージャの詳細

目次1. 範囲2. 関数の戻り値3. 関数のネスト4. 終了5. クロージャの実用的応用1. 内部変...

VUEはG2チャートを使用した実装を導入します

目次G2チャートについて使用テンプレートで使用される完全なコード (棒グラフ)世界地図を追加するG2...