要件: docker を介して Jenkins をインストールし、Jenkins を介してプロジェクトをデプロイします。最終的な効果は、Jenkins のプロジェクトで [Build] をクリックしている限り、Jenkins は gitLab に移動して最新プロジェクトの最新コードをプルし、それに基づいて最新のプロジェクトの最新コードをプルします。独自のプロジェクトの pom.xml ファイルを作成し、プロジェクトを jar にパッケージ化し、最新の jar を自動的に実行して、ワンクリック ビルドの目標を達成します。
サーバー上で Jenkins をセットアップする
1. jdk、git、maven の 3 つをサーバーにインストールします。
2. jenkis イメージをプルし、jenkins イメージを開始します
docker pull jenkins/jenkins:latest #jenkins の最新イメージをプルします
ジェンキンスのバージョンを表示
ドッカー検索ジェンキンス
3. イメージパッケージをダウンロードする
docker pull jenkins/jenkins インストール パッケージ ダウンロード コマンド docker イメージ イメージ パッケージの表示
4. jenkins ディレクトリを作成する
mkdir /home/jenkins_home
5. コンテナを作成する
docker run -d --name common-build -p 8026:22 -v /home/jenkins_home:/home/jenkins_home jenkins/jenkins: lts
6. jenkinsの起動状況を確認する
docker ps |grep jenkins
jenkins が表示されていれば起動されています。
7. Webページ上のサーバーにアクセスします
管理者パスワードを入力する必要があることを示します
docker logs コンテナ名/id コンテナ作成後の初期パスワードを表示します cat /var/jenkins_home/secrets/initialAdminPassword パスワードを表示します
管理者パスワードを入力し、初心者入力インターフェイスに入ります。
7. 管理者アカウントを作成する
インスタンス構成
8. gitの設定
「プロジェクト」-->「構成」-->「ソースコード管理」-->「172.17.3.203 の Git」をクリックします。
[Git] -> [リポジトリの追加] -> [追加 (jenkins 認証情報)] をクリックします。
リポジトリ URL Git ウェアハウスのアドレスを入力します
9. 認証情報の追加
バウチャーに記入してください
UserName は gitLab のユーザー名で、[Enter directy]、[Add] の順にクリックして、gitLab ウェアハウスで生成された秘密キーを見つけて ssh キー (「id_rsa」ファイル) を生成し、その秘密キーをそのファイルに置きます。
10.git リポジトリを選択します
gitLab ブランチを選択します
Maven の構成
11. 新しいアイテムを作成する
jenkinsのタスクを設定し 、「新規項目」をクリックします --> フリースタイル・プロジェクトを選択してフリースタイル・ソフトウェア・プロジェクトをビルドします --> 「一般」をクリックします --> パラメータ化されたビルド・プロセスを確認します (このプロジェクトはパラメータ化されています) --> パラメータを追加します --> git パラメータ (Git パラメータ) git パラメータの名前と説明を定義します (任意のパラメータ タイプに名前を付け、ブランチまたはラベルを選択します) デフォルト値 (gitlab プロジェクト ウェアハウス ブランチ) 原点/メイン
12.プロジェクト構成
13. Docker環境の設定
14. プロジェクトが作成されたら、プロジェクトを確認します
ホームページ上に構築する
次に、進行状況バーをクリックして、このビルドの内容を詳細に表示します。
次に、コンソール出力をクリックして、対応するログ情報を確認します。
15 コンテナを Jenkins に関連付ける
172.17.3.203 にコンテナを作成し、作成したコンテナ ID を Jenkins 上のコンテナ ID に関連付けます。
sudo docker ps viewコンテナ
fun@ubuntu:~$ sudo docker ps [sudo] fun 的密码: コンテナ ID イメージ コマンド 作成ステータス ポート名 f5482718ab38 android-package:0.0.1 "/usr/sbin/sshd -D" 22 か月前 3 か月前 0.0。 0.0:8037->22/tcp vsoontech-build 1cda7a9301a9 android-package:0.0.1 "/usr/sbin/sshd -D" 2 年前 3 か月前 0.0.0.0:8036->22/tcp baofeng-build
0.0.0.0: ポート 8037 は、jenkins 上のノードに 8037 を入力します --->172.17.5.178 (共通ビルド)
Advanced でのポート入力は 8037、Java パス入力は /home/fun/zhaojm/jdk1.8.0_261/bin/java、接続タイムアウトは 60、最大再試行回数は 0、再試行間隔は 0 です。