DockerでJenkinsをインストールし、初期プラグインのインストール失敗の問題を解決する

DockerでJenkinsをインストールし、初期プラグインのインストール失敗の問題を解決する

Jenkins をインストールした後、プラグインの初期ダウンロードが常に失敗し、インストールが失敗します。何度か再試行しても、プラグインのインストールで止まってしまいます。

ここでは、Docker で Jenkins をインストールし、初期プラグインのインストールが失敗する問題を解決する方法の記録を示します。

プラグインのインストールに失敗するということは、実際には公式の Jenkins イメージが取得され、プラグインが最初にインストールされるときに外国の Web サイトから取得されるため、インストールが非常に遅くなったり、インストールが失敗したりすることを意味します。最善の解決策は、Jenkins Chinese コミュニティによって提供される Jenkins イメージを取得することです。 Jenkins 中国語公式サイト: https://www.jenkins.io/zh/

インストール手順 イメージを取得する

docker pull jenkinszh/jenkins-zh:latest

Docker 公式イメージリポジトリ: https://hub.docker.com/

Jenkinsの中国語ミラーはここ

Jenkinsコンテナのマウントディレクトリを設定する

Jenkins コンテナが起動すると、インストール構成ファイルが生成されます。これらのファイルの生成アドレスを Linux サーバー上のディレクトリに変更する必要があります。

目的: 将来構成が変更されたときに、構成を見つけやすくするため。

Jenkinsビルドディレクトリを作成します。mkdir /home/jenkins_home

ディレクトリ認証 chmod 777/home/jenkins_home システムが認証されていない場合、起動後にファイルを生成できません。

起動コマンド

docker run -d -p 8085:8080 -p 50000:50000 --name myjenkins -v /home/jenkins_home/:/var/jenkins_home jenkinszh/jenkins-zh:latest

コマンドの説明:

コンテナを実行する
-d バックグラウンドで実行
-p Linux サーバーポートと Docker コンテナポートのマッピング
--name カスタムコンテナエイリアス
-v LinuxサーバーディレクトリとDockerコンテナディレクトリの最後の名前の後に、マウント時に取得したイメージ名とバージョンが続きます。

注: 8085 はアクセス ポートであり、使用されていない任意のポートを使用できます。 8080は変更できません

-p 50000:50000は変更できません。

/home/jenkins_home/ ローカルビルドディレクトリはカスタマイズ可能で、前の手順で作成および承認されたディレクトリと一致します。

/var/jenkins_homeDocker コンテナ ディレクトリ。変更できません。

アクセス

サーバー IP + カスタム ポートの例: 192.168.0.200:8085

初期パスワード

docker ps 現在実行中のコンテナのIDを取得する

Docker ログコンテナ ID

ログログで確認できます。

プラグインのインストール

中国のコミュニティが提供する Jenkins イメージは設定を必要とせず、直接インストールでき、速度も非常に高速です。

付録 - 公式イメージへのプラグインのインストール失敗の分析

上記のJenkinsによってマウントされたディレクトリを例に挙げます

jenkins_home ディレクトリの hudson.model.UpdateCenter.xml ファイルでは、プラグインがプルするための構成アドレスが定義されています。デフォルトのアドレスには直接アクセスできます。https://www.google.com/ に接続していることがわかります。ファイアウォールのため、このアドレスには常にアクセスできませんでした。

/jenkins_home/updates ディレクトリ内の default.json ファイルの内容は、hudson.model.UpdateCenter.xml で定義されたプラグインによって取得された構成アドレスの内容です。他のブログなどを通じて default.json ファイルの内容を変更しても、再度起動するとすぐに復元されるため、どのように変更しても有効になりません

Jenkins中国コミュニティが提供するミラーが処理され、プラグインプルの設定アドレスが国内ミラーアドレスに変更されたため、プラグインのダウンロードが非常に高速になりました。

Jenkins の中国コミュニティによるプラグインのプルに関する説明:

https://community.jenkins-zh.cn/t/jenkins/26

https://jenkins-zh.cn/wechat/articles/2019/11/2019-11-11-update-center-mirror-announcement/

さらに詳しく知るために提案する

これで、Jenkins を Docker でインストールし、プラグインの初期インストールが失敗する問題を解決する方法についての記事は終わりです。Jenkins を Docker でインストールすることに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JenkinsのDockerインストールの完全なプロセスとガイドのステップ
  • Jenkins のインストールとプラグイン管理の設定に関する入門チュートリアル
  • Jenkins環境のセットアップのダウンロードとインストールのプロセス
  • JenkinsのLinuxインストール手順と各種問題解決(ページアクセス初期化パスワード)
  • CentOS 8にJenkinsをインストールする方法
  • Ubuntu 16.04にJenkinsをインストールするための詳細な手順
  • Jenkins インストールにおけるタイムゾーン問題の分析と解決

<<:  JSはマップを使用してdouble配列を統合します

>>:  Linux での MySQL 8.0.11 のインストールに関するチュートリアル

推薦する

LinuxサーバーにGRUBをインストールする手順

Linux サーバーに GRUB をインストールする方法クラウド移行ツールを使用して、CentOS ...

IEの送信フォームの記録履歴クリックリターン情報を実現するためのCSSスタイルコントロールはまだ残っています

これは主に CSS スタイルのコントロールと META タグです。コードをコピーコードは次のとおりで...

Vueライフサイクルカメラの8つのフック関数

目次1. beforeCreateとcreated関数2. beforeMountとmount関数3...

MySQL の innodb_flush_log_at_trx_commit と sync_binlog を区別する方法

2 つのパラメータ innodb_flush_log_at_trx_commit と sync_bi...

MySQLリモート接続失敗の解決策

以前、MySQLがローカルでは接続できるのにリモートでは接続できないという問題に遭遇したことがありま...

Ubuntu 18.04 で中国語入力方法を設定する方法

Ubuntuの最新バージョンでは、ユーザーは中国語入力方法を別途ダウンロードする必要がなくなりました...

JavaScript でじゃんけんゲームを書く

この記事では、JavaScriptでじゃんけんゲームを書くための具体的なコードを参考までに紹介します...

HTMLでのフォーム送信の実装

フォーム送信コード1. ソースコード分析 <!DOCTYPE html> <htm...

TypeScriptの基本型の詳細な説明

目次ブール型数値型文字列型文字列と数値を連結する未定義およびnull配列型タプル型列挙型あらゆるタイ...

Vue フィルターの使用とタイムスタンプ変換の問題

目次1. 概念をすぐに認識する: 2. ローカルフィルター: 3. グローバルフィルター: 4. 拡...

MySQLは現在の日付と時刻を取得する関数の例の詳細な説明

現在の日付 + 時刻 (日付 + 時刻) を取得する関数: now() mysql> now(...

Windows 10 に付属する仮想マシンのネットワークを設定するための詳細な手順 (グラフィック チュートリアル)

1. サーバー ホストをクリックし、右側の操作リストで [仮想スイッチ管理] をクリックして、仮想...

パーティクルダイナミックボタン効果を実現するCSS

オリジナルリンクhttps://github.com/XboxYan/no…ボタンは、おそらく We...

Vueテクノロジーに基づく再帰コンポーネントの実装方法

説明するこの記事では、Vue テクノロジーに基づいて再帰コンポーネントを実装する方法を紹介します。 ...

MySQL 8.0.11 圧縮バージョンを Windows 10 にインストールするための詳細なチュートリアル

最近コンピュータを再インストールした後、最新バージョンのみをインストールするという強迫観念に基づいて...