1Jenkinsプロジェクトビルドタイプの概要
ジェンキンスには多くの種類の自動建設プロジェクトがあり、次の3つが一般的に使用されています。
- FreeStyleプロジェクト(FreeStyleプロジェクト)
- Mavenプロジェクト
- パイプラインプロジェクト
それぞれのタイプの建設は、実際には同じ建設プロセスと結果を完了することができますが、操作モード、柔軟性などの点で異なります。実際の開発における独自のニーズと習慣に応じて選択できます。(追記:柔軟性が非常に高いため、個人的にはパイプラインタイプを使用することをお勧めします)
2フリースタイルのプロジェクト建設
以下は、プロジェクトの統合プロセスを完了するためのフリースタイルプロジェクトの作成を示しています。
拉取代码->编译->打包->部署
2.1プルコード
1)プロジェクトを作成する
2)ソースコード管理を構成し、gitlabからコードをプルします
3)コンパイルしてパッケージ化する
ビルド->ビルドステップの追加->エグゼキュータシェル
echo "$(date) 开始编译和打包"
mvn clean package
echo "$(date) 编译和打包结束"
今すぐビルドしてテストする
2.2Tomcatのインストールと構成
1)Tomcat8.5をインストールします
Tomcat圧縮パッケージを10.99.200.110サーバー(/ root / pkg /)にアップロードします
cd /root/pkg/
tar -xf apache-tomcat-9.0.33.tar.gz #解压
cd apache-tomcat-9.0.33
./bin/startup.sh #启动
./bin/shutdown.sh #停止
ただし、Tomcatサーバーへの後続のJenkinsデプロイメントプロジェクトにはTomcatユーザーが必要なため、tomcatの次の構成を変更し、ユーザーと権限を追加します。
2)Tomcatを構成します
1> tomcatのtomcat-users.xmlファイルを変更します
cat conf / tomcat-users.xml
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/> \
</tomcat-users>
ユーザーとパスワードは次のとおりです。tomcat
2> Tomcatマネージャーの下のcontext.xmlファイルを変更します
目的:Tomcatにログインするように構成したばかりのユーザーを有効にするには、次の構成を変更する必要があります。
vim webapps / manager / META-INF / context.xml
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
3)Tomcatを設定し、ブラウザにアクセスするだけです
2.3デプロイメント(プロジェクトをリモートTomcatにデプロイする)
前提条件:データベースに関しては、事前にデータベースとテーブルを作成し、使用するデータベースアカウントとパスワードを構成します。
1)Deploy tocontainerプラグインをインストールします
目的:Jenkins自体はTomcatへのリモートデプロイメントの機能を実現できません。Deploytocontainerプラグインをインストールする必要があります。
2)Tomcatユーザー資格情報を追加します
3)ビルド後の操作を追加します
4)「今すぐビルド」をクリックしてビルドプロセスを開始します
このステップまで、展開が成功したことが証明されています。画像が表示されていないのは、構成を調整していないためです。
すべてここにあります。その他の記事については、個人のWeChatパブリックアカウントを参照してください。ALLLinuxでは、スキャンしてみましょう。