ASP.NET Core + Docker +Jenkins 实现持续集成

*准备

我们需要在容器内使用docker-compose,所以我们需要先进容器安装docker-compose。

通过命令进入容器:

docker exec -it jenkins /bin/bash

docker-compsoe的安装请查看官方文档:https://docs.docker.com/compose/install/#install-compose

1.新建一个ASP.NET Core MVC应用程序:

需要勾选Docker支持

2.将其上传到git:

3.建立Jenkins任务

(1)选择“新建任务”,输入任务名称,选择“自由风格项目”,然后点击确定:

(2)选择“源代码管理”,填入我们的git地址

输入H/2 * * * *设置两分钟拉取一次

(3)构建环境

勾上 Delete workspace before build start 是设置构建前删除工作区

勾上 Abort the build if it's stuck 是设定构建的超时时间,如果构建使用的时间超过设定的时间,那么就认为这次的构建是失败的。笔者这里超时设置的是10分钟

(4)增加一个Execute Shell 脚本,并填写以下脚本内容

#!/bin/bash
# 获取短版本号

GITHASH=`git rev-parse --short HEAD`
echo ---------------Remove-Orphans------------------
docker-compose -f ./docker-compose.yml -f ./docker-compose.override.yml  -p webapplication6 down --rmi local --remove-orphans
echo ------------------Config-----------------------
docker-compose -f ./docker-compose.ci.build.yml -p webapplication6 config
echo ------------------Build------------------------
docker-compose -f ./docker-compose.ci.build.yml -p webapplication6 up --build
echo ---------------Publishing...------------------
docker-compose -f "./docker-compose.yml" -f "./docker-compose.override.yml"  -p webapplication6 up -d --build

echo ---------------Clear-Images...------------------
docker rmi $(docker images -f "dangling=true" -q)
echo ---------------Clear-Containers...------------------
docker rm webapplication6_ci-build_1

2018.4.24 加入镜像和容器清理命令,所以上面的脚本和下图不一样,以上面的shell脚本为准

应用保存,回到项目界面上。点击立即构建进行部署工作

我们可以查看控制台输出:

待构建成功以后访问url(你的ip:端口)试试效果。

不知道端口的可以通过命令docker ps查看

参考文章:

http://www.cnblogs.com/LongJiangXie/p/7517909.html https://www.cnblogs.com/myzony/p/8434121.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端小叙

nodejs的package.json依赖dependencies中 ^ 和 ~ 的区别

nodejs的package.json定义了一个模块,包括其依赖关系的一个简单的JSON文件,该文件可以包含多个不同的指令来告诉Node包管理器如何处理模块。 ...

2749
来自专栏张伟博客

在线PAC代理脚本更新

8893
来自专栏ionic3+

各平台安装Composer

要部署一个网站,主页空间不是云主机,只有Apache,即只支持静态Html或Php。服务上,Node或Spring boot是不能用了,So sad,只好找回老...

843
来自专栏令仔很忙

手把手教你搭建和配置Jenkins环境

  搭建Jenkins,首先得安装Jenkins,安装的问题就不说了,一般第一次安装完成后,服务会直接在浏览器中运行,网址:http://localhost:...

1061
来自专栏jiajia_deng

Qt 5.11.1 静态编译

离线安装包:http://download.qt.io/archive/qt/5.11/5.11.1/

911
来自专栏圣杰的专栏

ABP入门系列(1)——通过模板创建MAP版本项目

一、从官网创建模板项目 进入官网下载模板项目 依次按下图选择 ? 3.输入验证码开始下载 ? 4.下载提示: ? 二、启动项目 使用VS2015打开项目,还...

2147
来自专栏移动端周边技术扩展

Vue.js学习笔记(1)

641
来自专栏bluesummer

打包dll发布到nuget服务器

1655
来自专栏木头编程 - moTzxx

ThinkPHP5.0 build 自动生成模块

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

1022
来自专栏Core Net

ASP.NET Core 2.0 : 九.从Windows发布到CentOS的跨平台部署

3416

扫码关注云+社区