Docker環境にJenkinsコンテナをインストールする詳細なチュートリアル

Docker環境にJenkinsコンテナをインストールする詳細なチュートリアル

推奨される Docker 学習教材: https://www.runoob.com/docker/docker-tutorial.html

1. Centos7環境のDockerインストール

まず公式ウェブサイトにアクセスしてイメージをダウンロードします。docker 公式イメージ: https://hub.docker.com/

1. 最新バージョンをインストールする

yum をインストール -y yum-utils 
デバイスマッパー永続データ lvm2

2. dockerソースを追加する

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3. Dockerをインストールする

yum で docker-ce をインストールします

注: Docker がインストールされているかどうかを確認してください。

yum list インストール済み | grep docker

アンインストールする場合は、次のコマンドを入力します。

 yum 削除 xxx xxxx xxx

4. /etc/docker/daemon.jsonで DNS、アクセラレータ、バインド IP を設定します。通常、daemon.json ファイルは存在しないため、自分で作成する必要があります。

{
 「DNS」: [
 「114.114.114.114」、
 「8.8.8.8」
 ]、
 #Accelerator は、イメージのダウンロード速度を上げることができます。Alibaba Cloud ミラー アドレス "registry-mirrors": ["https://registry-docker.com"] に設定することもできます。
 "bip":"172.17.5.1/24" 
}

5. インストール後、dockerのバージョンと情報を確認します

docker バージョン
docker情報

6. 仮想マシンの起動時にDockerが起動するように設定する

sudo chkconfig docker オン

7. Dockerを起動する

sudo サービス docker 開始

2. dockerでJenkinsをインストールする

1. 一般的に、管理の便宜上、コンテナのIPセグメントをカスタマイズします。ここでは、ネットワーク名をカスタマイズします: mynetwork

docker ネットワーク作成 --subnet=172.18.0.0/16 mynetwork

定義は完了しており、表示できます: docker network ls

2. jinkins イメージをダウンロードします。
フォーマット: docker pull image description: バージョン番号。バージョン番号が指定されていない場合は、デフォルトで最新バージョン番号がダウンロードされます: latest

docker pull jenkins/jenkins:latest

3. コンテナ アカウントを承認する コンテナの移行または再作成時に Jenkins が再インストールされないようにするには、最初のインストール時にデータを対応するディレクトリにマウントする必要があります。私の場合は、データをこのディレクトリにマウントします: /home/docker/data/jenkins 。コンテナ アカウントはホスト マシン上の 1000 に対応するため、マウント ディレクトリ/home/docker/data/jenkinsを承認する必要があります。承認しないと、コンテナの起動時に作成が失敗します。

 chown -R 1000 /home/docker/data/jenkins

4. コンテナを作成し、Linuxの起動時に起動し、固定IPを指定します。

docker run --net mynetwork --ip 172.18.0.4 
-v /home/docker/data/project/jenkins:/home/docker/data/jenkins 
-v /home/docker/var/jenkins/jenkins_home:/var/jenkins_home 
-v /etc/localtime:/etc/localtime
-e JAVA_OPTS=-Duser.timezone=アジア/上海 
-dit --name マイジェンキンス 
-p 8080:8080 -p 50000:50000 
--restart=常にjenkins/jenkins:latest

説明する:
1. -v /home/docker/data/project/jenkins:/home/docker/data/jenkins
このディレクトリは、ホスト マシン上でスクリプトの作成と実行を容易にするためにマウントされており、Jenkins コンテナーもこれを呼び出すことができます。

2. -v /home/docker/var/jenkins/jenkins_home:/var/jenkins_home
このディレクトリは、Jenkinsの再インストールなしで移行を容易にするためにマウントされています。

注意: ポート番号-p 50000:50000デフォルトであり、変更しないでください。ポート番号-p 8080:8080のみ、必要に応じて設定できます。

6. インストールが成功しました。次の点を確認してください。

docker ps -a | grep ジェンキンス

ここに画像の説明を挿入

5. コンテナを入力します。
ルートユーザーとして:

docker exec -it -u root my-jenkins /bin/bash

デフォルトユーザー: docker exec -it my-jenkins /bin/bash

6. コンテナに初めて vim コマンドをインストールします。

apt-getアップデート

apt-get で vim をインストール

7. コンテナから出るには 2 つの方法があります。
1) 終了
2) Ctrl + P + Q

要約する

これで、docker 環境に jenkins コンテナをインストールする方法についての記事は終了です。docker 環境に jenkins コンテナをインストールする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Docker+jenkins+python3環境を使用して非常に詳細なチュートリアルを構築する
  • Docker+K8S+GitLab/SVN+Jenkins+Harbor をベースにした継続的インテグレーション配信環境の構築に関する詳細なチュートリアル
  • Docker環境でJenkinsを設定すると、タスクをビルドするときにコンソールログに文字化けした中国語の文字が表示されます
  • DockerでJenkins環境を起動する際の問題について

<<:  リアルタイムクロックを実装するネイティブJS

>>:  myisamchk および mysqlcheck ツールを使用して破損した MySQL データベース ファイルを迅速に修復する方法

推薦する

Linux (Ubuntu) での MySQL 5.6.28 のインストールと設定のチュートリアル

mysql5.6.28のインストールと設定方法1. 基本的なシステム情報を確認し、yumでインストー...

Linux 上のカラフルな猫

Linux システムを使用したことがある友人なら、 catコマンドを使用したことがあるはずです。もち...

MySQLが2つのテーブルを関連付ける際のエンコードの問題と解決策

Mysqlが2つのテーブルを関連付けると、次のエラーメッセージが生成されます:照合順序の不正な組み合...

MySQL マスタースレーブ同期における server-id の例の詳細な説明

序文MySQL クラスターを構築する場合、当然のことながら、データの一貫性を確保するために、データベ...

JavaScriptエンジンV8の実行プロセスの詳細な説明

目次1. V8ソース2. V8サービスターゲット3. V8の初期アーキテクチャIV. V8の初期アー...

ウェブページのカラーマッチングスキルについての簡単な説明(フロントエンド開発者必読)

一般的に、Web ページの背景色は、より柔らかく、よりシンプルで、より明るく、暗いテキストとマッチし...

Vueのフロントエンドとバックエンドのポートの不一致の問題を解決する

Vue のフロントエンドとバックエンドのポートが一致していませんconfig index.jsファイ...

Tencent Cloud Serverの構築方法を説明します(グラフィックチュートリアル)

この記事は元々ブロガーのWeiwei Miaoによって書かれたものです。ブログホームページ: htt...

よく使用される Linux コマンドの完全なリスト (推奨コレクション)

目次1. システム情報2. シャットダウン(システムのシャットダウン、再起動、ログアウト) 3. フ...

CSS 使用のヒントのまとめ

最近、ブログのアップグレードを始めました。テンプレートを変更する過程で、CSS スタイルシートを書き...

CSS で要素フローティングとクリアフローティングを実装する方法

フローティングの基礎標準ドキュメント フローでは、要素は塊級元素と行內元素の 2 種類に分けられます...

Vue3+Vue-cli4 プロジェクトで Tencent スライダー検証コードを使用する方法

導入:従来の画像検証コードと比較して、スライダー検証コードには次の利点があります。サーバーは検証コー...

ChromeはCookieの変更を監視し、値を割り当てます

次のコードは、Chrome による Cookie の変更の監視を導入しています。コードは次のとおりで...

Web面接におけるJS事前解析と変数プロモーションの違い

目次事前分析とは何ですか?変数と関数の準備の違いvar 変数の繰り返し宣言変数と関数の昇格の優先順位...

この記事ではSQL CASE WHENの使い方を詳しく説明します

目次シンプルな CASEWHEN 関数:これは、CASEWHEN 条件式関数を使用するのと同じです。...