Jenkins は、使いやすい操作インターフェイスを提供するオープンソースの継続的インテグレーション (CI) ツールで、主にソフトウェア プロジェクトの継続的かつ自動的な構築/テストや外部タスクの動作の監視に使用されます。Java 言語で書かれた Jenkins は、Tomcat などの一般的なサーブレット コンテナ内で実行することも、スタンドアロンで実行することもできます。通常は、バージョン管理ツール (SCM) やビルド ツールと組み合わせて使用されます。一般的に使用されるバージョン管理ツールには SVN、GIT が含まれ、ビルド ツールには Maven、Ant、Gradle が含まれます。
1 インストール
ubuntu で docker を使用してインストールする
1.1 環境のインストール
jk
公式 Web サイトから対応するバージョンをダウンロードします。Java ダウンロード | Oracle
ここではx64.tar.gzを選択します
ubuntuのusr/localディレクトリに解凍します。
tar -zxvf jdk-8u371-linux-x64.tar.gz -C /usr/local
環境変数を構成する
vim /etc/profile
#追加
export JAVA_HOME=/usr/local/jdk1.8.0_371
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JRE_HOME=$JAVA_HOME/jre
#生效
source /etc/profile
#验证
java -version
メイブン
対応するバージョンをダウンロードするための公式 Web サイトMaven のダウンロード
bin.tar.gzを選択します
usr/localに解凍します
tar -zxvf maven.tar.gz -C /usr/local
設定.xmlを編集する
#进入maven->conf目录
#编辑settings.xml
vim settings.xml
#增加mirror
<mirror>
<id>nexus-aliyun</id>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
#编辑jdk1.8 编译插件
#在profiles中增加
<profile>
<id>jdk8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
#在settings中增加
<activeProfiles>
<activeProfile>jdk8</activeProfile>
</activeProfiles>
#环境变量
vim /etc/profile
#追加
export M2_HOME=/usr/local/apache-maven-3.9.3
export PATH=$M2_HOME/bin:$PATH
#生效
source /etc/profile
#验证
mvn -version
Maven home: /usr/local/apache-maven-3.9.3
Java version: 1.8.0_371, vendor: Oracle Corporation, runtime: /usr/local/jdk1.8.0_371/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.4.0-113-generic", arch: "amd64", family: "unix"
港湾労働者
docker と docker compose が必要です。インストールについてはここを参照してください。
1.2 ジェンキンスのインストール
#拉去镜像
docker pull jenkins/jenkins:2.401.2-lts
#在/usr/local下创建一个docker目录,并创建docekr-jenkins目录
#在该目录下创建一个docker-compose.yaml
version: "3.1"
services:
jenkins:
image: jenkins/jenkins:2.401.2-lts
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/
#docker-compose 构建
#在当前目录下
docker-compose up -d
#需要对当前目录的data目录增加权限
chmod 777 -R data
#重启容器
docker-compose restart
#查看日志
docker logs -f jenkins
#得到密码
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
1717a4d7c81e4459896c886435f67j94
This may also be found at: /var/jenkins_home/secrets/initialAdminPassword
#访问服务器ip:8080即可
#如果插件安装太慢或安装失败
可以在数据卷中的hudson.modle.UpdataCenter.xml修改镜像地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
ip:8080 にアクセスして、jenkins UI ページに入ります。
入った後
デフォルトの管理者アカウントでログインします
左上隅の管理者のステータスで、パスワードまで下にスライドし、パスワードを 1234Qwer に変更します。
2 Maven JDK Docker の読み込み
jenkins内のmavenとjdkのダウンロードが遅すぎるため、1.1の環境にインストールされていたjdkとmavenをjenkinsに読み込む必要がある
#将jdk和maven移动到安装jenkins的data目录下
mv /usr/local/jdk /usr/local/docker/docker-jenkins/data
mv /usr/local/maven /usr/local/docker/docker-jenkins/data
docker-compose.ymlを変更する
version: "3.1"
services:
jenkins:
image: jenkins/jenkins:2.401.2-lts
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
- /etc/docker/daemon.json:/etc/docker/daemon.json
ジェンキンスを再構築する
docker-compose up -d
3 プラグインをインストールする
「システム管理」->「プラグイン管理」->「利用可能なプラグイン」で検索してインストールし、インストールが完了したら Jenkins を再起動して、UI に入り、構成する必要があるプラグインのインストール手順を構成します。
gitlab
gitlab ツールに接続する
gitlab でグローバル認証情報を追加する
# 进入
系统管理 -> credentials -> stores scoped to jenkins -> system -> 全局凭证 -> add credentials -> user/password
# 使用gitlab用户名密码
gitlab 用户名gitlab用户名,密码gitlab密码
id设置为 gitlab-user-pass
# 保存
Gitパラメータ
git パラメータ プラグイン。プロジェクトのパラメータ化されたビルドを実行するときに使用されます。
構成ファイルプロバイダー
Maven の settings.xml や k8s の kubeconfig などの外部設定ファイルをロードするために使用されます。
ノードとラベルのパラメータ
ノードラベルパラメータの設定
認証トークンルートの構築
トークン認証情報の作成に使用されます
SSH経由で公開する
リモート SSH 操作
[システム管理] -> [システム構成] で、ドロップダウンして [SSH 経由で公開] を選択します。
名前は任意、アドレスは接続するサーバーのIP、ユーザー名、ターゲットサーバーに送信するディレクトリ、上級レベルで追加されるユーザー名のパスワード、ミラーテスト接続