
与持续集成中的GitLab Runner应该分布在不同的服务器上
chown -R 1000 /usr/local/docker/jenkins/dataversion: '3.1'
services:
jenkins:
restart: always
image: jenkins
container_name: jenkins
ports:
# 发布端口
- 8080:8080
# 基于JNLP的Jenkins代理通过TCP端口50000与Jenkins master进行通信
- 50000:50000
environment:
TZ: Asia/shanghai
volumes:
- ./data:/var/jenkins_home docker-compose up -ddocker logs jenkinsDashboard View
Publish Over SSH
Extend Choice Parameter
也可以在Jenkins运行界面中的Manage Jekins中的Manage Plugins自定义下载安装/var/jenkins_home/jdk1.8.0_152/var/jenkins_home/apache-maven-3.5.3docker exec -it jenkins /bin/bashssh-keygen -t rsa -C "email@example.com"cat /var/jenkins_home/.ssh/id_rsa.pub在Jenkins管理页面中系统设置增加SSH Server配置
测试环境-192.168.32.255192.168.32.255root/usr/local/jenkins12345622300000第一步是实现所有项目的父工程依赖项目的持续交付
项目创建标签:
创建Maven Project:
配置Maven Project:初始化
第二次配置Maven Project开始使用
General:
Extended Choice Parameter:
Choose Source for Value:
def var_key=['bash','-C','cd/var/jenkins_home/workspace/myshop-dependencies;git pull >/dev/null;git remote prune origin>/dev/null;git tag -l|sort -r |head -10']
var_key.excute().text.tokenize('\n')源码管理:
Post Steps:
echo $RELEASE_VERSION
cd /var/jenkins_home/workspace/myshop-depedencies
git checkout $RELEASE_VERSION
git pull origin $RELEASE_VERSION
mvn clean packageAdd post-build step:Send files or execute commands over SSH
SSH Publishers:
SSH Server:
name:测试环境-192.168.32.255
Transfers:
cd /usr/local/jenkins/myshop-service-user-provider
cp target/myshop-service-user-provider-1.0.0-SNAPSHOT.jar docker
cd docker
docker build -t 192.168.32.133:5000/myshop-service-user-provider:v1.0.0
docker push 192.168.32.133:5000/myshop-service-user-provider:v1.0.0
docker-compose down
docker-compose up -d
docker image prune -f保存
Build with Parameters