Jenkins使用SSH构建Go项目并执行
Jenkinx可以帮助我们通过SSH插件,将项目直接部署到指定的服务器。
下载插件
(1)点击左侧的“系统管理”菜单 ,然后点击

(2)选择“可选插件”选项卡,搜索Publish over SSH,在列表中选择Publish over SSH ,点击“直接安装”按钮,安装完成后如下图

配置要部署的服务器
(1)选择系统管理,选择系统设置

(2)配置SHH,配置好后点击应用、保存

构建项目
(1)回到首页,点击新建按钮 .如下图,输入名称,选择创建一个自由风格的项目,点击OK

(2)General管理,可以添加项目描述和GitHub项目路径,以及一些配置

(3)源码管理,选择GitHub



(4)构建触发器,配置触发规则,这里以定时和轮询为示例,配别设置为

定时构建:定时构建1次任务
轮询SCM:定时查看源码管理的代码是否更新,有更新则构建,否则不会构建
如图所示,定时构建为每间隔10分钟定时构建一次,轮询SCM为每5分钟轮询检测一次。
时间*号规则为: 分 时 日 月 周
(5)构建环境,配置控制台输出时间戳和指定Go语言版本

(6)构建,使用之前配置的SSH服务器,通过项目的Dockerfile构建镜像,Shell脚本启动容器

Exec command如下:
cd /mnt/data/jenkins
source /etc/profile
chmod 777 build.sh run.sh
./build.sh
项目内的Dockerfile如下:
FROM golang:1.11-alpine
ENV Jenkins=/go/src/github.com/Jenkins
COPY . $Jenkins/
RUN cd /go/src/github.com/Jenkins \
&& go build
FROM alpine
ENV Jenkins=/go/src/github.com/Jenkins
COPY --from=0 $Jenkins/Jenkins /usr/bin
WORKDIR /data
CMD ["Jenkins"]
build脚本如下:
#!/bin/bash
docker rmi jenkins:v1.0
docker build . -t jenkins:v1.0
docker rm -f jenkins
docker run -itd --restart=unless-stopped -v /etc/localtime:/etc/localtime -v /etc/timezone:/etc/timezone --name jenkins -v $(pwd):/data --network=host jenkins:v1.0
docker logs -f jenkins
最后点击“保存”按钮
(7)执行构建,控制台查看输出


查看服务器的容器和镜像:

至此,就完成了使用SSH构建Go项目的所有搭建流程。
Jenkins使用SSH构建Go项目并执行的更多相关文章
- jenkins +git+ssh 构建 .net项目
jenkins +git+ssh 构建 .net项目 安装jenkins jdk 和插件就不一一介绍了. Multiple SCMs 插件介绍:可以获取多个项目(如果你的项目中有依赖其他项目的) So ...
- Jenkins 十一: 构建Maven项目
1. 点击“新建”,在“Item名称”栏输入要构建的项目名,比如“Maven_project”,选择“构建一个maven项目”,点击“OK”按钮. 2. 找到“源码管理”-> “Subversi ...
- Jenkins 五: 构建Ant项目
1. 点击“新建”,在“Item名称”栏输入要构建的项目名,比如“Ant_project”,选择“构建一个自由风格的软件项目”,点击“OK”按钮. 2. 找到“源码管理”-> “Subversi ...
- Jenkins持续集成构建自动化测试项目
1.配置内容安全策略(配置一次): 1.1.构建一个自由风格的软件项目 1.2.Build Triggers:Build when job nodes start 1.3.Build:Execute ...
- Jenkins+maven+SVN构建java项目中遇到的问题及解决
[ERROR] No goals have been specified for this build. You must specify a valid lifecycle phase or a g ...
- Jenkins 八: 构建Git项目
1. 安装git. http://git-scm.com/download/win 下载之后一步步安装即可. 2. 安装插件. 打开"系统管理" –> "管理插 ...
- jenkins配置slave节点 构建项目并执行操作
1.新建与配置结点 [系统管理]-> [管理结点]-> [新建结点] 2.配置slave 说明: Name: 定义slave的唯一名称标识,可以是任意字符串,通常设置为slave主机名.i ...
- Jenkins自动构建gitlab项目(jenkins+maven+giltlab+tomcat)
环境准备: System:CentOS 7.3 (最小化安装) JDK: 8u161 (1.8_161) tomcat: 8.5.29 Jenkins: Jenkins 2.107.1 Gitlab: ...
- [ci]jenkins构建容器项目java-helloworld-非docker plugin模式
栗子思路说明: 不使用任何docker plugin 使用jenkins server本地(含mvn环境)构建,无jenkins slave jenkins server本地构建的war包,推送dep ...
随机推荐
- 腾讯iphone面试题(转)
1Objective-C内部的实现 2CALayer和View的关系 3 http协议,tcp/ip 4 UITableView的那些元素是可以自定义的? 5 c语言的,定义变量,比如int,在什么情 ...
- MySQL数据库开发的36条原则【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- 上手spring boot项目(二)之spring boot整合shiro安全框架
题记:在学习了springboot和thymeleaf之后,想完成一个项目练练手,于是使用springboot+mybatis和thymeleaf完成一个博客系统,在完成的过程中出现的一些问题,将这些 ...
- Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: REFERENCES command denied to user 'nali'@'localhost' for table 'dbs'
按照教程 Install hive on Mac with Homebrew,在 mac 上安装 Hive 时, 最后执行 hive 命令后,出现错误: Exception in thread &qu ...
- idea建立项目关联到git仓库操作步骤
eg:创建一个名为demo的git项目 创建git远程项目,命名为[/demo] 在[D:\workspace\gf]创建本地项目[demo] 在idea里选择[VCS]->[Checkout ...
- sass 安装过程中的坑
1,需要在项目中使用sass/scss 功能需要先在项目中安装,安装方法: cnpm install node-sass --save-dev //安装node-sass cnpm install s ...
- ZooKeeper初步
ZooKeeper 简介: 顾名思义 zookeeper 就是动物园管理员,他是用来管 hadoop(大象).Hive(蜜蜂).pig(小猪)的管理员, Apache Hbase 和 Apache S ...
- 数据库Oracle和MySQL 的不同
实例区别: MySQL是轻量型数据库,开源免费.Oracle收费,这个不是重点,,重点是它贵. MySQL一个实例可以操作多个库,而Oracle一个实例只能对应一个库. MySQL安装只有300多兆, ...
- VBA/Excel-实例系列-04-求两个数组的交集
原创: Z Excel高效办公之VBA 2017-03-10 Part 1:逻辑过程 已有两个数组,要求单个数组中信息无重复 以最短的数组作为循环,分别判断该数组中的元素是否在另一个数组中 如果某一元 ...
- Spring Cloud第七篇 | 声明式服务调用Feign
本文是Spring Cloud专栏的第七篇文章,了解前六篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Cloud ...