CenterOS7 インストールおよび構成環境 jdk1.8 チュートリアル

CenterOS7 インストールおよび構成環境 jdk1.8 チュートリアル

1. まずcenterosに付属のJDKをアンインストールします

rpm-qa|grepopenjdk

組み込みのopenjdkが発見した

2. 削除

rpm -e --nodeps

3. 再度クエリを実行する

rpm-qa|grepjdk 

4. usr/localにフォルダを作成する

/usr/local に移動します
mkdirjava 

5. 先ほど作成したファイルにjdk1.8を入れます。

cd /usr/local/java

xftpでアップロードして解凍する

tar-zxvfjdk-8u181-linux-x64.tar.gz 

6. 解凍したフォルダに入ります

cdjdk1.8.0_181/pwd# (この手順では、後で環境を構成するために使用される jdk1.8 のパスを記録します) 

7. 環境を構成する

vim/etc/プロファイル

次のパスを挿入するにはiを押してください

exportJAVA_HOME=/usr/local/java/jdk1.8.0_181exportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexportPATH=$PATH:$JAVA_HOME/bin

Escキーを押すとwqが終了します

ソース/etc/プロファイル

8. 成功したか確認する

Javaバージョン

Maven環境設定

1. /usr/localの下にMavenフォルダを作成する

cd /usr/localmkdirmaven 

2. 新しく作成したフォルダに入る

cdmaven

apache-maven-3.5.4-bin.zipをアップロードします

3. 解凍する

解凍されたapache-maven-3.5.4-bin.zip 

4. 解凍したフォルダに入る

cdapache-maven-3.5.4/pwd#(このパスを記録しておくと、後で構成環境で使用されます)

5. 環境を設定する

vim/etc/プロファイル

iを押すと次の内容が挿入されます

エクスポートMAVEN_HOME=/usr/local/maven/apache-maven-3.5.4エクスポートPATH=$PATH:$MAVEN_HOME/bin

Escキーを押した後: wq save

ソース/etc/プロファイル

6. 成功したか確認する

mvn-v

centeros7にgitをインストールする

yum のインストール

降りて行くだけ

成功したか確認する

git --version 

gitコマンドのアドレスを表示する

どれがアジト

これで環境がセットアップされ、Maven プライベート サーバーと GitLab の構築を開始できます。

Gitlabのセットアップ

1. /etc/yum.repos.d/gitlab-ce.repo を作成する

vim /etc/yum.repos.d/gitlab-ce.repo

次にiキーを押して次のコンテンツを挿入します

[gitlab-ce]name=GitlabCERepositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/gpgcheck=0enabled=1

2.

sudoyummakecachesudoyuminstallgitlab-ce#(最新版をインストール) または sudoyuminstallgitlab-ce-12.0.4#(バージョン番号を指定)

3. external_urlを設定する

gitlab.rb を vim に追加します。

external_url アドレスを次のように変更します: http://本機地址:端口號/

ローカルアドレスを確認する: ifconfig

ポート番号で実行されているアプリケーションを確認します。lsof -i:ポート番号

4.

gitlab-ctlreconfigure

5.

gitlab-ctlrestart#開始gitlab-ctlstart|stop|status|restart#その他の操作

6. アクセス

http://localhost アドレス:ポート番号/

FAQ gitlab502 : このポートは使用中です

ポートが使用されていないことを確認して、4 から続行します。

centeros7 は Maven プライベート サーバーを構築します

nexus3.xをダウンロード:

https://www.sonatype.com/download-oss-sonatype

1. /usr/localにnexusファイルを作成する

cd /usr/localmkdirnexuscdnexus 

2. ダウンロードしたNexus圧縮パッケージをアップロードして解凍します。

tar-zxvfnexus-3.18.1-01-unix.tar.gz 

3.

cdnexus-3.18.1-01/bin/ls 

4. 開始

./nexusrun&

5. リモートアクセスポートを開く

ファイアウォールコマンド --zone=public --add-port=8081/tcp --permanentfirewall-cmd --reload 

ブラウザアクセス

6. スタートアップを自動的に開始するように設定する

1. サービスを作成する

vim /usr/lib/systemd/system/nexus.service

2. iを押して次の内容をコピーします

[Unit]Description=nexusservice[Service]Type=forkingLimitNOFILE=65536 #警告 handlingExecStart=/usr/local/nexus/nexus-3.7.1-02/bin/nexusstartExecReload=/usr/local/nexus/nexus-3.7.1-02/bin/nexusrestartExecStop=/usr/local/nexus/nexus-3.7.1-02/bin/nexusstopRestart=on-failure[Install]WantedBy=multi-user.target

3. スタートアップにサービスを追加する

システムctlenablenexus.service

4. 設定ファイルを再読み込みする

システムctlデーモンリロード

7. ルートとして実行します(nexus binの下のnexus.rcを編集します)

cd /usr/local/nexus/nexus-3.18.1-01/bin/vimnexus.rc

内容は次のように変更されます。

run_as_user="root"

8. nexus3の起動時に使用するjdkバージョンを変更する

cd /usr/local/nexus/nexus-3.18.1-01/bin/vimnexus

iを押して以下を追加します

INSTALL4J_JAVA_HOME_OVERRIDE=/usr/local/java/jdk1.8.0_181 

java_home アドレスは echo $JAVA_HOME を使用して出力できます (/etc/profile がエクスポートされていると仮定)

9. nexus3のデフォルトポートを変更する

nexus-xx 内のファイル

etc/nexus-default.properties 

ここで構築されています。以下はプライベートサーバーにデプロイし、テストのためにプライベートサーバーからダウンロードするものです

1. ファサードを作成し、プライベートサーバーにアップロードする

/usr の下にプロジェクトを作成する

cd /usr/mkdirprojects

zip ファイルをプロジェクト ディレクトリに解凍し、pom.xml が配置されているディレクトリに入ります。

mvndeploy -Dmaven.test.skip=true -U 

アップロードに成功しました

ここでは、匿名ユーザーがサーバーにアクセスできるようにする必要があります(匿名ユーザーがサーバーにアクセスできるようにする)

ローカルMavenには設定されたユーザーがいないため

アイデアMavenコマンドdepolyを使用することもできます

<?xml バージョン="1.0" エンコーディング="UTF-8"?>
<プロジェクト xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <モデルバージョン>4.0.0</モデルバージョン>
  <groupId>com.netease</groupId>
  <artifactId>maven_test_demo</artifactId>
  <バージョン>1.0.0-SNAPSHOT</バージョン>
  <packaging>jar</packaging>
  <!-- 定数を定義する -->
  <プロパティ>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven-compiler-plugin.version>3.6.1</maven-compiler-plugin.version>
    <nexus.host>192.168.20.143:8081</nexus.host>
  </プロパティ>
  <!-- デプロイプライベートサーバーのアドレスと ID を定義します (ここでの ID は、Maven conf の設定のサーバータグと一致している必要があります) -->
  <配布管理>
    <リポジトリ>
      <id>ネクサスリリース</id>
      <name>Nexus プライベート リリース リポジトリ</name>
      <url>http://${nexus.host}/repository/maven-releases</url>
    </リポジトリ>
    <スナップショットリポジトリ>
      <id>nexus-スナップショット</id>
      <name>Nexus プライベート スナップショット リポジトリ</name>
      <url>http://${nexus.host}/repository/maven-snapshots</url>
    </スナップショットリポジトリ>
  </配布管理>
  <!-- 定義のコンパイル: https://blog.csdn.net/jiachunchun/article/details/90235498 -->
  <ビルド>
    <finalName>${project.artifactId}-${project.version} </finalName>
    <プラグイン>
      <プラグイン>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <バージョン>${maven-compiler-plugin.version}</バージョン>
        <構成>
          <ソース>${java.version}</ソース>
          <ターゲット>${java.version}</ターゲット>
          <encoding>${project.build.sourceEncoding}</encoding>
        </構成>
      </プラグイン>
    </プラグイン>
  </ビルド>
</プロジェクト>

settings.xmlのサーバーで定義されたIDは一貫している

次の画像を設定に追加します

<mirror><id>セントラル</id><url>http://repo1.maven.org/maven2</url><mirrorOf>セントラル</mirrorOf></mirror>

最後に設定ファイルです。この時点で、jar パッケージをプライベート サーバーに公開できます。

引っ張る方法をご覧ください。

maven_demo_impl プロジェクトの pom.xml

<?xml バージョン="1.0" エンコーディング="UTF-8"?>
<プロジェクト xmlns="http://maven.apache.org/POM/4.0.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <モデルバージョン>4.0.0</モデルバージョン>
  <groupId>com.netease</groupId>
  <artifactId>maven_demo_impl</artifactId>
  <バージョン>1.0-SNAPSHOT</バージョン>
  <親>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <バージョン>2.0.5.RELEASE</バージョン>
    <relativePath/> <!-- リポジトリから親を検索 -->
  </親>
  <!-- 定数を定義する -->
  <プロパティ>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven-compiler-plugin.version>3.6.1</maven-compiler-plugin.version>
    <nexus.host>192.168.20.143:8081</nexus.host>
    <spring-cloud.version>フィンチリー.SR1</spring-cloud.version>
  </プロパティ>
  <!-- 倉庫の住所を定義する -->
  <リポジトリ>
    <リポジトリ>
      <id>nexus-aliyun-レポ</id>
      <name>nexus aliyun リポジトリ</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </リポジトリ>
    <!-- プライベートサーバー -->
    <リポジトリ>
      <id>Maven パブリック</id>
      <name>maven-public</name>
      <url>http://192.168.20.143:8081/リポジトリ/maven-public/</url>
    </リポジトリ>
  </リポジトリ>
  <依存関係管理>
    <依存関係>
      <依存関係>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies</artifactId>
        <バージョン>${spring-cloud.version}</バージョン>
        <type>ポンポン</type>
        <scope>インポート</scope>
      </依存関係>
    </依存関係>
  </依存関係管理>
  <!-- 依存関係 -->
  <依存関係>
    <依存関係>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
    </依存関係>
    <依存関係>
      <groupId>com.netease</groupId>
      <artifactId>maven_test_demo</artifactId>
      <バージョン>1.0.0-SNAPSHOT</バージョン>
    </依存関係>
  </依存関係>
  <ビルド>
   <プラグイン>
    <プラグイン>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-maven-plugin</artifactId>
    </プラグイン>
   </プラグイン>
  </ビルド>
</プロジェクト>

設定が完了すると、自動的にプライベートサーバーに移動してjarをダウンロードします。

Jenkinsビルド

1. 環境バージョンを確認する

java-version#利用できない場合は、上記の jdk1.8 インストールを参照してください mvn-v#利用できない場合は、上記の maven インストールを参照してください git--version#利用できない場合は、上記の git インストールを参照してください

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

Jenkins リポジトリを追加します。

sudowget -O /etc/yum.repos.d/jenkins.repohttp://jenkins-ci.org/redhat/jenkins.reposudorpm --importhttp://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

3. インストール

インストール

4. 開始

sudoservicejenkinsstart

5. アクセス

http://ip:8080/#jenkenisデフォルトは8080です

初回パスワード:

vim /var/lib/jenkins/secrets/initialAdminPassword

推奨プラグインをクリックしてインストールします(後でインストールすることを選択した場合、何をインストールすればよいかわかりません)

Jenkinsのポートを変更する

vim/etc/sysconfig/jenkins

JENKINS_PORT="8080" ===> を、使用されていない変更したいポートに変更します。JENKINS_PORT="8089"

サービスを再起動する

サービスjenkins再起動

問題が発生しました: JDK を再インストールし、Java アドレスを変更しました

jenkins を起動するとエラーが報告されます: 制御プロセスがエラー コードで終了したため、jenkins.service のジョブが失敗しました。詳細については、「systemctl status jenkins.service」および「journalctl -xe」を参照してください。

プロンプトに従って、systemctl status jenkins.serviceと入力します。

解決:

1> 現在のJava環境変数を表示する

エコー$JAVA_HOME

2> Java環境変数アドレスをコピーし、/etc/init.d/jenkinsファイルを編集し、指定された場所にアドレスを追加し、サフィックス/bin/javaを追加します。

ジェンキンス

重要なポイントは、Jenkins を構成することです。

1. グローバルjdk maven gitを構成する

Jenkinsの管理(システム管理) -> グローバルツール構成(グローバルツール構成)をクリックします。

1. Maven設定:settings.xmlアドレスを構成する

2. jdkアドレスを設定します( echo $JAVA_HOMEを使用して取得できます)

3. git設定アドレスは(which -a git)を使用して表示できます。

4. Maven設定アドレス

2. 新しいタスクを作成する

3. タスクを設定する

1. ソースコード管理を設定します。次のバージョンはgitlabのバージョン番号です。

リポジトリ URL: アクセスするリポジトリの名前 資格情報: アクセス アカウントのパスワードまたは SSH 証明書 ブランチ指定子 (「任意」の場合は空白): アクセスするブランチ。複数のソース コード リポジトリを使用できます ブラウザ: ソース コード リポジトリを選択します サーバー URL: ソース コード リポジトリの URL バージョン: ソース コード リポジトリ サーバーのバージョン番号

2. ビルドを構成する

cleancompilepackageinstalldeploy-Dmaven.test.skip=true-U#jar を公開する

その後適用すると設定は完了です!

3. 私のビューで -> 新しく作成されたプロジェクトを見つけます --> 今すぐビルドをクリックします

ビルド履歴で今ビルドをクリックすると、以下のように表示されます。#1: はビルドID、コンソール出力: 具体的な出力を確認できます。

以下は、以前にプルされた指定プロジェクトのマスターブランチを確認するための入力ログです。

ユーザー root によって開始されました
SYSTEMとして実行中
ワークスペース /var/lib/jenkins/workspace/first でのビルド
資格情報 fad2813a-c894-4386-ae16-11d6e6d349d4 を使用
リモート Git リポジトリのクローン作成
リポジトリのクローン http://192.168.20.137:9029/root/wx-ssm.git
> /usr/local/git/bin/git init /var/lib/jenkins/workspace/first # タイムアウト=10
http://192.168.20.137:9029/root/wx-ssm.git からアップストリームの変更を取得しています
> /usr/local/git/bin/git --version # タイムアウト=10
GIT_ASKPASS を使用して資格情報を設定する
> /usr/local/git/bin/git fetch --tags --progress http://192.168.20.137:9029/root/wx-ssm.git +refs/heads/*:refs/remotes/origin/*
> /usr/local/git/bin/git config remote.origin.url http://192.168.20.137:9029/root/wx-ssm.git # タイムアウト=10
> /usr/local/git/bin/git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # タイムアウト=10
> /usr/local/git/bin/git config remote.origin.url http://192.168.20.137:9029/root/wx-ssm.git # タイムアウト=10
http://192.168.20.137:9029/root/wx-ssm.git からアップストリームの変更を取得しています
GIT_ASKPASS を使用して資格情報を設定する
> /usr/local/git/bin/git fetch --tags --progress http://192.168.20.137:9029/root/wx-ssm.git +refs/heads/*:refs/remotes/origin/*
> /usr/local/git/bin/git rev-parse refs/remotes/origin/master^{commit} # タイムアウト=10
> /usr/local/git/bin/git rev-parse refs/remotes/origin/origin/master^{commit} # タイムアウト=10
リビジョン 47d13c3ca0bc12fc0465c3e4c582b2c542276eb6 (refs/remotes/origin/master) をチェックアウトしています
> /usr/local/git/bin/git config core.sparsecheckout # タイムアウト=10
> /usr/local/git/bin/git チェックアウト -f 47d13c3ca0bc12fc0465c3e4c582b2c542276eb6
コミット メッセージ: "pom.xml を更新"
初めてのビルドです。変更ログをスキップします。
[最初] $ /project/java/maven/apache-maven-3.6.1/bin/mvn -s /project/java/maven/apache-maven-3.6.1/conf/settings.xml -gs /project/java/maven/apache-maven-3.6.1/conf/settings.xml パッケージをクリーンアップします
[INFO] プロジェクトをスキャンしています...
[警告]
[警告] com.guojin:gjmetal-wx-ssm:jar:1.0.0.1-SNAPSHOT の有効なモデルの構築中に問題が発生しました
[警告] 'dependencies.dependency.(groupId:artifactId:type:classifier)' は一意である必要があります: org.apache.httpcomponents:httpclient:jar -> バージョン (?) vs 4.5.6 @ 行 155、列 21
[警告]
[警告] これらの問題はビルドの安定性を脅かすため、修正することを強くお勧めします。
[警告]
[警告] このため、将来の Maven バージョンでは、このような不正なプロジェクトのビルドがサポートされなくなる可能性があります。
[警告]
[情報]
[情報] ---------------------< com.guojin:gjmetal-wx-ssm >----------------------
[INFO] gjmetal-wx-ssm 1.0.0.1-SNAPSHOT をビルドしています
[情報] --------------------------------[ jar ]---------------------------------
[情報]
[情報] --- maven-clean-plugin:2.5:clean (default-clean) @ gjmetal-wx-ssm ---
[情報]
[情報] --- jacoco-maven-plugin:0.7.9:prepare-agent (事前テスト) @ gjmetal-wx-ssm ---
[INFO] argLine が -javaagent:/var/lib/jenkins/.m2/repository/org/jacoco/org.jacoco.agent/0.7.9/org.jacoco.agent-0.7.9-runtime.jar=destfile=/var/lib/jenkins/workspace/first/target/jacoco.exec,includes=com.gjmetal.* に設定されました
[情報]
[情報] --- maven-resources-plugin:2.6:resources (default-resources) @ gjmetal-wx-ssm ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 1 つのリソースをコピーしています
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ gjmetal-wx-ssm ---
[INFO] 変更が検出されました - モジュールを再コンパイルしています。
[INFO] 27 個のソース ファイルを /var/lib/jenkins/workspace/first/target/classes にコンパイルしています
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - -
[エラー] コンパイル エラー:
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - -
[エラー] /var/lib/jenkins/workspace/first/src/main/java/com/gjmetal/Swagger2.java:[4,40] パッケージ org.fuelteam.springboot.swagger2 が存在しません [エラー] /var/lib/jenkins/workspace/first/src/main/java/com/gjmetal/Swagger2.java:[21,2] シンボル symbol: class EnableSwagger2 が見つかりません
[情報] 2 つのエラー
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - -
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] ビルド失敗
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] 合計時間: 9.183 秒
[情報] 終了日時: 2019-08-23T17:05:09+08:00
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[エラー] プロジェクト gjmetal-wx-ssm で目標 org.apache.maven.plugins:maven-compiler-plugin:3.6.1:compile (default-compile) を実行できませんでした: コンパイル失敗: コンパイル失敗:
[エラー] /var/lib/jenkins/workspace/first/src/main/java/com/gjmetal/Swagger2.java:[4,40] パッケージ org.fuelteam.springboot.swagger2 が存在しません [エラー] /var/lib/jenkins/workspace/first/src/main/java/com/gjmetal/Swagger2.java:[21,2] シンボルが見つかりません [エラー] シンボル: クラス EnableSwagger2
[エラー] -> [ヘルプ 1]
[エラー]
[エラー] エラーの完全なスタック トレースを表示するには、-e スイッチを使用して Maven を再実行します。
[エラー] 完全なデバッグ ログを有効にするには、-X スイッチを使用して Maven を再実行します。
[エラー]
[エラー] エラーと解決策の詳細については、次の記事を参照してください。
[エラー] [ヘルプ 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
ビルドステップ「トップレベルの Maven ターゲットを呼び出す」がビルドを失敗としてマークしました
終了: 失敗

上記のエラーはプロジェクトの問題です。プロジェクトがプルされたことがわかります。したがって、プロジェクトの正確性を確保する必要があります。

以下は、gitlab nexus jenkins を設定した後、jar をプライベート サーバーに自動的に送信し、jar プロジェクトを開始する 2 つの正しいプロジェクト実行例です。

背景: gitlab nexus jenkinsはすべて完了しています

1. GitLabからプロジェクトをダウンロードし、jarをプライベートサーバーに公開します。

GitLab アドレスを再設定します:

Maven コマンドを設定します:

クリーンコンパイル、パッケージのインストール、デプロイ -Dmaven.test.skip=true -U 

今すぐビルドをクリックすると、次のようなコンソール出力が表示されます。

ユーザー root によって開始されました
SYSTEMとして実行中
ワークスペース /var/lib/jenkins/workspace/maven_home でのビルド
資格情報 fad2813a-c894-4386-ae16-11d6e6d349d4 を使用
> /usr/local/git/bin/git rev-parse --is-inside-work-tree # タイムアウト=10
リモート Git リポジトリから変更を取得する
> /usr/local/git/bin/git config remote.origin.url http://192.168.20.143:8083/root/maven_demo.git # タイムアウト=10
http://192.168.20.143:8083/root/maven_demo.git からアップストリームの変更を取得しています
> /usr/local/git/bin/git --version # タイムアウト=10
GIT_ASKPASS を使用して資格情報を設定する
> /usr/local/git/bin/git fetch --tags --progress http://192.168.20.143:8083/root/maven_demo.git +refs/heads/*:refs/remotes/origin/*
> /usr/local/git/bin/git rev-parse refs/remotes/origin/master^{commit} # タイムアウト=10
> /usr/local/git/bin/git rev-parse refs/remotes/origin/origin/master^{commit} # タイムアウト=10
リビジョン a26adc740d331eabe5b0fb2a46b372dbf6673d2c (refs/remotes/origin/master) をチェックアウトしています
> /usr/local/git/bin/git config core.sparsecheckout # タイムアウト=10
> /usr/local/git/bin/git チェックアウト -f a26adc740d331eabe5b0fb2a46b372dbf6673d2c
コミット メッセージ: "pom.xml を更新"
> /usr/local/git/bin/git rev-list --no-walk a26adc740d331eabe5b0fb2a46b372dbf6673d2c # タイムアウト=10
[maven_home] $ /project/java/maven/apache-maven-3.6.1/bin/mvn -s /project/java/maven/apache-maven-3.6.1/conf/settings.xml -gs /project/java/maven/apache-maven-3.6.1/conf/settings.xml をクリーンコンパイルしてパッケージをインストールし、デプロイします -Dmaven.test.skip=true -U
[INFO] プロジェクトをスキャンしています...
[情報]
[情報] --------------------< com.netease:maven_test_demo >---------------------
[INFO] maven_test_demo 1.0.0-SNAPSHOT のビルド
[情報] --------------------------------[ jar ]---------------------------------
[情報]
[情報] --- maven-clean-plugin:2.5:clean (default-clean) @ maven_test_demo ---
[INFO] /var/lib/jenkins/workspace/maven_home/target を削除しています
[情報]
[情報] --- maven-resources-plugin:2.6:resources (default-resources) @ maven_test_demo ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 存在しないリソースディレクトリ /var/lib/jenkins/workspace/maven_home/src/main/resources をスキップします
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_test_demo ---
[INFO] 変更が検出されました - モジュールを再コンパイルしています。
[INFO] 1 つのソース ファイルを /var/lib/jenkins/workspace/maven_home/target/classes にコンパイルしています
[情報]
[情報] --- maven-resources-plugin:2.6:resources (default-resources) @ maven_test_demo ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 存在しないリソースディレクトリ /var/lib/jenkins/workspace/maven_home/src/main/resources をスキップします
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_test_demo ---
[INFO] コンパイルするものはありません - すべてのクラスは最新です
[情報]
[情報] --- maven-resources-plugin:2.6:testResources (default-testResources) @ maven_test_demo ---
[INFO] テストリソースをコピーしていません
[情報]
[情報] --- maven-compiler-plugin:3.6.1:testCompile (default-testCompile) @ maven_test_demo ---
[INFO] テストソースをコンパイルしていません
[情報]
[情報] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven_test_demo ---
[INFO] テストはスキップされます。
[情報]
[情報] --- maven-jar-plugin:2.4:jar (default-jar) @ maven_test_demo ---
[INFO] jar をビルドしています: /var/lib/jenkins/workspace/maven_home/target/maven_test_demo-1.0.0-SNAPSHOT.jar
[情報]
[情報] --- maven-resources-plugin:2.6:resources (default-resources) @ maven_test_demo ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 存在しないリソースディレクトリ /var/lib/jenkins/workspace/maven_home/src/main/resources をスキップします
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_test_demo ---
[INFO] コンパイルするものはありません - すべてのクラスは最新です
[情報]
[情報] --- maven-resources-plugin:2.6:testResources (default-testResources) @ maven_test_demo ---
[INFO] テストリソースをコピーしていません
[情報]
[情報] --- maven-compiler-plugin:3.6.1:testCompile (default-testCompile) @ maven_test_demo ---
[INFO] テストソースをコンパイルしていません
[情報]
[情報] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven_test_demo ---
[INFO] テストはスキップされます。
[情報]
[情報] --- maven-jar-plugin:2.4:jar (default-jar) @ maven_test_demo ---
[情報]
[情報] --- maven-install-plugin:2.4:install (default-install) @ maven_test_demo ---
[INFO] /var/lib/jenkins/workspace/maven_home/target/maven_test_demo-1.0.0-SNAPSHOT.jar を /var/lib/jenkins/.m2/repository/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-SNAPSHOT.jar にインストールしています
[INFO] /var/lib/jenkins/workspace/maven_home/pom.xml を /var/lib/jenkins/.m2/repository/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-SNAPSHOT.pom にインストールしています
[情報]
[情報] --- maven-resources-plugin:2.6:resources (default-resources) @ maven_test_demo ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 存在しないリソースディレクトリ /var/lib/jenkins/workspace/maven_home/src/main/resources をスキップします
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_test_demo ---
[INFO] コンパイルするものはありません - すべてのクラスは最新です
[情報]
[情報] --- maven-resources-plugin:2.6:testResources (default-testResources) @ maven_test_demo ---
[INFO] テストリソースをコピーしていません
[情報]
[情報] --- maven-compiler-plugin:3.6.1:testCompile (default-testCompile) @ maven_test_demo ---
[INFO] テストソースをコンパイルしていません
[情報]
[情報] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven_test_demo ---
[INFO] テストはスキップされます。
[情報]
[情報] --- maven-jar-plugin:2.4:jar (default-jar) @ maven_test_demo ---
[情報]
[情報] --- maven-install-plugin:2.4:install (default-install) @ maven_test_demo ---
[INFO] /var/lib/jenkins/workspace/maven_home/target/maven_test_demo-1.0.0-SNAPSHOT.jar を /var/lib/jenkins/.m2/repository/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-SNAPSHOT.jar にインストールしています
[INFO] /var/lib/jenkins/workspace/maven_home/pom.xml を /var/lib/jenkins/.m2/repository/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-SNAPSHOT.pom にインストールしています
[情報]
[情報] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ maven_test_demo ---
nexus-snapshots からダウンロード: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml
進捗状況(1):776 B

nexus-snapshots からダウンロード: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml (6.5 kB/s で 776 B)
nexus-snapshots にアップロードしています: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.jar
進捗状況 (1): 2.6 kB

nexus-snapshots にアップロードされました: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.jar (13 kB/s で 2.6 kB)
nexus-snapshots にアップロードしています: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.pom
進捗状況 (1): 2.1 kB

nexus-snapshots にアップロードされました: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.pom (19 kB/s で 2.1 kB)
nexus-snapshots からダウンロード: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/maven-metadata.xml
進捗状況(1):286B

nexus-snapshots からダウンロード: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/maven-metadata.xml (11 kB/s で 286 B)
nexus-snapshots にアップロードしています: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml
進捗状況(1):776 B

nexus-snapshots にアップロードされました: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml (4.6 kB/s で 776 B)
nexus-snapshots にアップロードしています: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/maven-metadata.xml
進捗状況(1):286B

nexus-snapshots にアップロードされました: http://192.168.20.143:8081/repository/maven-snapshots/com/netease/maven_test_demo/maven-metadata.xml (2.5 kB/s で 286 B)
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] ビルド成功
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] 合計時間: 3.640 秒
[情報] 終了日時: 2019-08-27T14:24:47+08:00
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
完了: 成功

2. 実行中のjarを指定されたマシンに公開する

JenkinsにPublish Over SSHプラグインがインストールされていることを確認してください。Jenkinsの管理 -> プラグインの管理 -> sshを検索

次にsshを設定します

設定後、「構成のテスト」をクリックすると成功が表示されます。

設定が完了すると、新しいアイテム(プロジェクト)は単なる追加ビルドになります(以前の設定を変更する必要があることに注意してください:項目的git地址

#最後に実行されたスクリプトは/projects/scriptsに配置されます
mkdir スクリプト
vim 実行.sh
#i を押すと次のコンテンツがコピーされます Project_name=$1
ポート番号=$2
#echo $プロジェクト名
#echo $Port_no
./etc/プロファイル
# プロジェクトに入る cd /projects/$Project_name
# 元のプロセスを見つけて終了する
pid=$(ps -ef | grep java | grep $プロジェクト名 | awk -F '[ ]+' '{print $2}')
-9 $pid を強制終了する
#jar を開始
nohup java -jar $Project_name-1.0-SNAPSHOT.jar --server.port=$Port_no -server -Xmx1000m -Xms1000m -Xmn700m -XX:+UseParallelGC &
echo "サービスを開始しています..."
睡眠20
#再起動後に現在のアプリケーションがあるかどうかに基づいて起動が成功したかどうかを判断します pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')
#エコー $pid
if [ -z $pid ];then
 echo "起動に失敗しました"
 出口1
それ以外
 echo $Project_name : $pid "成功"
フィ

今すぐビルドしてコンソール出力を確認します

ユーザー root によって開始されました
SYSTEMとして実行中
ワークスペース /var/lib/jenkins/workspace/maven_demo_impl でのビルド
資格情報 fad2813a-c894-4386-ae16-11d6e6d349d4 を使用
> /usr/local/git/bin/git rev-parse --is-inside-work-tree # タイムアウト=10
リモート Git リポジトリから変更を取得する
> /usr/local/git/bin/git config remote.origin.url http://192.168.20.143:8083/root/maven_demo_impl.git # タイムアウト=10
http://192.168.20.143:8083/root/maven_demo_impl.git からアップストリームの変更を取得しています
> /usr/local/git/bin/git --version # タイムアウト=10
GIT_ASKPASS を使用して資格情報を設定する
> /usr/local/git/bin/git fetch --tags --progress http://192.168.20.143:8083/root/maven_demo_impl.git +refs/heads/*:refs/remotes/origin/*
リポジトリ origin/master のブランチを確認
1 個のリモート ブランチを確認しました
> /usr/local/git/bin/git show-ref --tags -d # タイムアウト=10
リビジョン bf0f9bd981c053359167a0e46e517f4f936c8c98 (origin/master) をチェックアウトしています
> /usr/local/git/bin/git config core.sparsecheckout # タイムアウト=10
> /usr/local/git/bin/git チェックアウト -f bf0f9bd981c053359167a0e46e517f4f936c8c98
コミット メッセージ: 「TestDemoImpl.java を更新」
> /usr/local/git/bin/git rev-list --no-walk bf0f9bd981c053359167a0e46e517f4f936c8c98 # タイムアウト=10
[maven_demo_impl] $ /project/java/maven/apache-maven-3.6.1/bin/mvn -s /project/java/maven/apache-maven-3.6.1/conf/settings.xml -gs /project/java/maven/apache-maven-3.6.1/conf/settings.xml パッケージをクリーンコンパイル -Dmaven.test.skip=true -U
[INFO] プロジェクトをスキャンしています...
[情報]
[情報] --------------------< com.netease:maven_demo_impl >---------------------
[INFO] maven_demo_impl 1.0-SNAPSHOT のビルド
[情報] --------------------------------[ jar ]---------------------------------
nexus-aliyun-repo からダウンロード: http://maven.aliyun.com/nexus/content/groups/public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml
maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml
進捗状況(1):776B

maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven-metadata.xml (4.2 kB/s で 776 B)
nexus-aliyun-repo からダウンロード: http://maven.aliyun.com/nexus/content/groups/public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.pom
maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.pom
進捗状況 (1): 2.1 kB

maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.pom (47 kB/s で 2.1 kB)
maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.jar
進捗状況 (1): 2.6 kB

maven-public からダウンロード: http://192.168.20.143:8081/repository/maven-public/com/netease/maven_test_demo/1.0.0-SNAPSHOT/maven_test_demo-1.0.0-20190827.062446-3.jar (67 kB/s で 2.6 kB)
[情報]
[情報] --- maven-clean-plugin:3.0.0:clean (default-clean) @ maven_demo_impl ---
[INFO] /var/lib/jenkins/workspace/maven_demo_impl/target を削除しています
[情報]
[情報] --- maven-resources-plugin:3.0.2:resources (default-resources) @ maven_demo_impl ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 1 つのリソースをコピーしています
[INFO] 0 個のリソースをコピーしています
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_demo_impl ---
[INFO] 変更が検出されました - モジュールを再コンパイルしています。
[INFO] 2 つのソース ファイルを /var/lib/jenkins/workspace/maven_demo_impl/target/classes にコンパイルしています
[情報]
[情報] --- maven-resources-plugin:3.0.2:resources (default-resources) @ maven_demo_impl ---
[INFO] フィルタリングされたリソースをコピーするために 'UTF-8' エンコーディングを使用します。
[INFO] 1 つのリソースをコピーしています
[INFO] 0 個のリソースをコピーしています
[情報]
[情報] --- maven-compiler-plugin:3.6.1:compile (default-compile) @ maven_demo_impl ---
[INFO] コンパイルするものはありません - すべてのクラスは最新です
[情報]
[情報] --- maven-resources-plugin:3.0.2:testResources (default-testResources) @ maven_demo_impl ---
[INFO] テストリソースをコピーしていません
[情報]
[情報] --- maven-compiler-plugin:3.6.1:testCompile (default-testCompile) @ maven_demo_impl ---
[INFO] テストソースをコンパイルしていません
[情報]
[情報] --- maven-surefire-plugin:2.21.0:test (default-test) @ maven_demo_impl ---
[INFO] テストはスキップされます。
[情報]
[情報] --- maven-jar-plugin:3.0.2:jar (default-jar) @ maven_demo_impl ---
[INFO] jar をビルドしています: /var/lib/jenkins/workspace/maven_demo_impl/target/maven_demo_impl-1.0-SNAPSHOT.jar
[情報]
[INFO] --- spring-boot-maven-plugin:2.0.5.RELEASE:repackage (デフォルト) @maven_demo_impl ---
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] ビルド成功
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
[情報] 合計時間: 11.163 秒
[情報] 終了日時: 2019-08-27T15:00:40+08:00
[情報]  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
SSH: ホスト [localhost.localdomain] から接続しています
SSH: 構成 [192.168.20.143] で接続しています...
SSH: EXEC: コマンド [sh /projects/scripts/run.sh maven_demo_impl 10010] からの STDOUT/STDERR ...
サービスを開始しています...
nohup: 出力を「nohup.out」に追加します。
maven_demo_impl: 4406 成功
SSH: EXEC: 20,262 ミリ秒後に完了
SSH: 構成を切断しています [192.168.20.143] ...
SSH: 1 個のファイルを転送しました
完了: 成功

ssh にはすでに jar があり、実行されていることがわかります。

以下もご興味があるかもしれません:
  • jdk1.8を使用して、指定された値に従ってリストをグループ化する操作を実装します。
  • Java jdk1.8はストリームを使用してリストのグループ化と分類操作を実行します。
  • JDK1.8 の ConcurrentHashMap における ComputeIfAbsent 無限ループ バグ
  • jdk1.8のArrayListの基になる配列がどのように拡張されるかについて話しましょう
  • CentOS7.4 で JDK1.8 をインストールするためのグラフィカル チュートリアル
  • Windows 10 システムで JDK1.8 をダウンロードしてインストールし、環境変数を設定するチュートリアル
  • Win10 システム 64 ビット jdk1.8 のダウンロードとインストールのチュートリアル図
  • Windows に JDK1.8+Tomcat9.0.27+Mysql5.7.28 をインストールする方法
  • ubuntu14.04 に jdk1.8 をインストールするチュートリアル
  • Windows 10 システムでの JDK1.8 環境変数の設定

<<:  ワンクリックで雨や雪のエフェクトを実現する ThingJS パーティクルエフェクト

>>:  88 秒で 1,000 万件のレコードを MySQL データベース テーブルに挿入する方法

推薦する

VueでTypeScriptを使用する方法

導入近年、TypeScript を求める声がますます高まり、TypeScript はフロントエンドに...

Dockerオーバーレイはホスト間のコンテナ相互通信を実現します

目次1. Dockerの設定2. レジストリとネットワークを作成する3. コンテナを起動する環境説明...

jsとcssのブロッキング問題の詳細な分析

目次DOMContentLoadedとロードjs ブロッキングとは何ですか? CSS ブロッキングと...

Linux システム Docker への ASP.NET Core アプリケーションのデプロイのプロセス分析

目次1. システム環境2. 運用プロセスと途中で遭遇した問題1. システム環境1. Tencent ...

Ansible を使用した Nginx のバッチ デプロイのサンプル コード

1.1 nginxインストールパッケージとインストールスクリプトをクライアントにコピーし、スクリプト...

Linux システムで IPv6 をサポートするように Nginx を設定する方法

1. 既存のnginxがipv6をサポートしているかどうかを確認する既存の nginx が ipv6...

CSS の新機能には、コントロールページの再描画と再配置の問題が含まれています

新しい CSS プロパティ contain を紹介する前に、読者はページの再描画と再配置が何であるか...

Linux での MongoDB のインストールに関するチュートリアル

MongoDB はクロスプラットフォームであり、Windows と Linux の両方にインストール...

HTM と HTML の違いは何ですか? HTM と HTML の違いは何ですか?

Web デザインを学習する過程で、html と htm の関係など、遭遇した多くの問題について深く...

Linux 編集の開始、停止、再起動の Springboot jar パッケージ スクリプトの例

序文springboot設定ファイルでは、設定ファイルの名前には独自の意味と用途があります。 dev...

MySQL REVOKE でユーザー権限を削除する

MySQL では、REVOKE ステートメントを使用してユーザーの特定の権限を削除できます (ユーザ...

MySQL で重複時間を削除して時間差を計算する実装

目次必要:ドライブ:アイデア:成し遂げる:個人的には、実際の開発ではストアド プロシージャの使用はお...

サイバーパンクスタイルのボタンを実現するためのHTML+CSS

まず効果を見てみましょう: 序文:このアイデアは、Bilibili のアップロード者 Steven ...

Docker-compose ネットワークの詳細な例

今日は Docker でのネットワーク設定を試し、後で忘れないようにプロセスを記録しました。 (シス...

Postman に基づく HTTP インターフェース テスト プロセスの分析

偶然、素晴らしい人工知能のチュートリアルを発見したので、みんなと共有せずにはいられませんでした。この...