zoukankan      html  css  js  c++  java
  • .net core通过jenkins + gogs + docker实现自动化部署

    一、打开项目,添加一个Dockerfile文件

    1.1 右击启动项目 -> 添加 -> Docker支持

    添加dockerfile

    1.2 打开多出来的 Dockerfile文件,可自己决定要不要修改什么

    dockerfile

    1.3 移动dockerfile文件到解决方案同级的目录下

    移动dockerfile

    二、安装docker

    因为每一位阅读者的环境都可能会不太一样(服务器系统),所以关于这个的内容,请自行按照相应的环境,进行查阅资料安装,本文不做赘述。

    三、安装gogs

    本来确实是可以不需要使用gogs,直接使用gitee或github等等仓库即可,但是如果有人需要搭建私有代码服务器的,则可继续阅读该内容。
    点击查阅这篇文章进行安装

    四、安装jenkins(宿主机中安装)

    jenkins在本地安装或者是用容器托管,本身在使用上都是差不多的,但是容器托管会有限制,推荐在本地安装
    4.1 安装
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
    yum install jenkins
    
    4.2 设置文件夹权限(以下命令假设你是root用户)
    chown -R jenkins:jenkins /var/lib/jenkins
    chown -R jenkins:jenkins /var/cache/jenkins
    chown -R jenkins:jenkins /var/log/jenkins
    systemctl restart jenkins
    
    4.3 查看jenkins的运行状态是否正常
    systemctl status jenkins
    

    jenkins运行状态示例

    4.4 打开浏览器,输入主机IP地址加端口号8080,进入jenkins安装界面

    例如: http://192.168.32.26:8080/

    jenkins界面

    4.5 执行命令查看密码
    cat /var/lib/jenkins/secrets/initialAdminPassword
    

    查看密码
    复制下来后返回jenkins的界面,粘贴进去,然后开始下一步

    4.6 点击“安装推荐的插件”

    4.7 安装完之后,会显示创建用户的页面,在创建成功一个用户之后进入jenkins主界面
    4.8 解决jenkins没有权限操作docker
    这个问题在后面使用jenkins创建任务,执行docker,命令的时候会出现,请务必耐心完成此一系列步骤:
    点击查看步骤

    五、创建一个jenkins任务

    5.1 填写名称,选择“构建一个自由风格的软件项目”,然后确定

    5.2 源码管理一栏选择git(如果是使用svn的小伙伴,请先到插件管理中下载svn插件,然后此界面中就会有svn的选择项)

    把第一步中设置的项目代码提交到远程仓库,然后把地址填写到下面的“Repository url”,可以修改一下分支,这里默认是master(这个表示执行构建任务的时候,会拉指定分支的代码过来构建)

    5.3 设置构建时执行的docker命令
    点击构建部分的下拉列表,选择“执行shell”

    填写以下内容(注意这是第一次构建的时候用的)
    #创建docker镜像
    docker build -t 你的镜像名 .
    #创建docker容器
    docker run --name 你的容器名 -p 9527:80 -d 你的镜像名
    
    后面在这一次构建成功之后,应该为如下脚本(把旧的容器和镜像都删掉再build)
    #停止容器
    docker stop 你的容器名
    #删除容器
    docker rm 你的容器名
    #删除镜像
    docker rmi 你的镜像名
    #创建docker镜像
    docker build -t 你的镜像名 .
    #创建docker容器
    docker run --name 你的容器名 -p 9527:80 -d 你的镜像名
    
    点击保存后退出
    5.4 手动点击“立即构建”按钮,开始构建


    可以点击“控制台输出”,实时查看构建时的情况
    以上是实现 jenkins + docker实现的可视化部署,接下来是配合 gogs 实现自动化

    六、使用gogs配合jenkins实现自动化

    6.1 jenkins中安装gogs插件
    系统管理 -> 插件管理

    6.2 点击tab中的可选插件,搜索框中输入 gogs,勾选搜索出来的gogs插件记录,然后点击直接安装


    我已经安装过了,所以没有任何插件匹配项显示

    6.3 设置gogs触发事件,让jenkins执行构建的密码(可做可不做)

    勾选并输入密码

    点击保存后退出
    6.4 设置gogs仓库
    点击仓库设置

    点击管理web钩子


    地址栏填写格式:http://xxx.xxx.xxx.xxx:8080/gogs-webhook/?job=jenkins中的任务名

    密钥文本根据你之前在jenkins中的任务里设置的写,如果没有设置请置空
    6.5 测试推送
    点击“测试推送”按钮,检查是否可以推送成功

    至此,以后只要一推送代码到这个仓库,就可以实现自动完成部署任务
  • 相关阅读:
    JavaWeb
    JavaWeb
    appium+python实现手机计算器随机计算
    使用uiautomatorviewer工具遇到以下问题-Unexpected error while obtaining UI hierarchy
    appium+python启动手机淘宝
    appium基本环境搭建
    python多个字典“合并”成一个字典
    HTML基础1-图像
    HTML基础1-文本
    RobotFrame简要安装
  • 原文地址:https://www.cnblogs.com/shapman/p/14054522.html
Copyright © 2011-2022 走看看