Spring Boot プロジェクトでは、Jenkins を使用して Docker イメージを構築し、それを harbor リポジトリにプッシュし、コンテナーを起動してから、ローカルで実行中のコンテナーにイメージをプルします。 Dockerファイル場所: ルートディレクトリ内、src と同じレベル java:8より # 著者: MAINTAINER zhaoyc ボリューム /tmp #ARG JAR_FILE #jarパッケージをコンテナに追加し、名前をapp.jarに変更します ターゲット/*.jar app.jarを追加します bash -c 'touch /app.jar' を実行します。 ENV TZ=アジア/上海 #RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone エクスポーズ81 #CMD ["-jar", "/app.jar"] "nohup" "&" ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] ドキュメントMavenのバージョン番号を1.4.2に指定するには、他のバージョンはテストされていないため、メインクラスが見つかりません。 <プラグイン> <!-- mavn jar パッケージ起動プラグイン --> <プラグイン> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <バージョン>1.4.2.RELEASE</バージョン> </プラグイン> </プラグイン> Jenkins の設定システム設定構成Docker – Dockerプラグインをインストールする必要があります 新しいMavenプロジェクト構成パラメータビルドを作成する プロジェクトのgitリポジトリ構成 mvn build ビルド構成 Dockerイメージをビルドし、リポジトリ構成にプッシュする リポジトリにプッシュした後スクリプトを実行する #!/bin/bash #IMAGE=${モジュールファイル名} #TAG=${タグ} 画像=$1 タグ=$2 PULL_IMAGE=192.168.1.100:81/プロジェクト/${イメージ}:${タグ} # 減算を計算し、小数点の前に 0 を付けて出力します (例: 0.3-0.1=0.2) CURRENT_IAMGE=`echo "$TAG - 0.1" | bc | awk '{printf "%.1f", $0}'` echo '=================Harbor 倉庫へのログインを開始します=================' docker ログイン http://192.168.1.100:81 -u admin -p Harbor12345 [ $? -eq 0 ]の場合; echo '==================ログイン成功==================' それ以外 echo '==================ログインに失敗しました==================' 戻り値 1 フィ echo '=================イメージの取得を開始します=================' docker pull ${PULL_IMAGE} echo '=================イメージのプル終了=================' # コンテナ操作の更新 echo '=================イメージの実行を停止=================' docker stop ${IMAGE}_${CURRENT_IAMGE} echo "10秒待ってください" 睡眠10 echo '=================ミラーの開始を開始します=================' #if [ ${IMAGE} == "java-demo" ]; then # docker run -d --name ${IMAGE}_${TAG} -p 9001:9001 ${PULL_IMAGE} #elif [ ${IMAGE} == "spring-cloud-eureka-client-demo" ]; 次に # docker run -d --name ${IMAGE}_${TAG} -p 9012:9012 ${PULL_IMAGE} #fi docker run -d --name ${IMAGE}_${TAG} -p 9001:9001 ${PULL_IMAGE} [ $? -eq 0 ]の場合; echo '================ミラーリングが正常に開始されました=================' それ以外 echo '================ミラーの起動に失敗しました================' 戻り値 1 フィ Jenkins が Docker イメージをビルドして Harbor リポジトリにプッシュする方法についての記事はこれで終わりです。Jenkins が Docker イメージをビルドする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 製品を選択した後、右下隅に√記号を表示するための純粋なCSS
>>: JavaScript の便利な配列トリック 12 選
目次序文エラーオブジェクト投げる試して…捕まえて…最後に最終ルールトライ/キャッチパフォーマンスウィ...
序文Dockerfile は Docker プログラムによって解釈されるスクリプトです。Docker...
1. Flexレイアウトの紹介Flex は Flexible Box の略で、「柔軟なレイアウト」を...
序文Linux システムのパフォーマンスを監視するために使用できるオープンソースの監視ツールが市場に...
目次1. Linuxシステムの操作レベルの概要2. 実行レベルを確認する3. 現在のシステムの動作レ...
目次導入例要約する導入$属性すべての親コンポーネントのプロパティを継承します (props を通じて...
この記事では、例を使用して、MySQL の計画されたタスクとイベントのスケジュールについて説明します...
最近、ブルートフォース攻撃によるサーバのクラッキングが頻発しています。侵入行為を大まかに分析し、よく...
日々の開発において、フロントエンドの学生はアニメーションやデザインについてよく議論します。デザイナー...
プロジェクトをプロジェクトサイトのテスト環境にデプロイするJDK1.8トムキャット8.5 Maven...
1. CentOS 7 仮想マシンを開きます。 2. 仮想マシンにログインし、リストにないユーザー名...
日常業務でファイルをダウンロードする一般的な方法は 2 つあります。 1 つ目は、サーバーのファイル...
多くのアプリやウェブサイトでは、ログインやアカウント登録の際にSMS認証コード1を送信する場所があり...
1 HTML入門1.1 初めてのコード体験、最初のウェブページの作成XML/HTML コードコンテン...
シナリオ: データ量が増加すると、MySQL が配置されているディスクがいっぱいになり、より大きなス...