zoukankan      html  css  js  c++  java
  • .net core使用Jenkins自动部署

    .net core使用Jenkins自动部署

    系统:CentOS Linux release 7.3.1611 (Core)

    SDK:dotnet SDK 5.0

    软件:Jenkins,Git,docker ce

    本文档的前提是CentOS 7.3 X64系统下,且以上软件均已安装配置完成

    docker 下载

    mysql下载

    安装Jenkins到docker

    • 创建jenkins工作目录

      mkdir /www/jenkins

    • 拉取jenkins镜像

      docker pull jenkins/jenkins:lts

    • 使用docker run 命令将其作为Docker中的容器运行

      docker run --name jenkins -d -p 8080:8080 -p 50000:50000 -v ~/www/jenkins/data:/var/jenkins_home -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock --privileged=true -u root jenkins/jenkins:lts
      

      具体可参考安装Jenkins

    • 安装后设置指导

      • 解锁Jenkins当您第一次访问新的Jenkins实例时,系统会要求您使用自动生成的密码对其进行解锁。

        • 浏览到 http://localhost:8080(或安装时为Jenkins配置的任何端口),并等待 解锁 Jenkins 页面出现。

          解锁

        • 从Jenkins控制台日志输出中,复制自动生成的字母数字密码(在两组星号之间)。

          密码

        • 登录进去以后这里默认选择推荐的插件。

          密码

        • 等待安装

        • 安装完成后创建一个用户名和密码,即可完成安装进入首页。

      创建项目

      • 源代码编译发布工程

        源代码发布工程即将源代码提交到git服务器,jenkins通过git拉取最新的源代码,并通过Dockerfile里的配置进行编译发布过程。然后通过Docker构建此镜像并运行到容器。

        可自行选择项目

        git clone https://gitee.com/ZYX315/QingShan.git

        Dockerfile用于编译镜像

        默认的Dockerfile是有帮我们进行代码编译并发布动作的。所以默认的Dockerfile文件是适合和代码一起提交到服务器然后使用Docker进行构建镜像。

        Dockerfile 文件需在根目录文件目录中

      • 将代码提交到gitee中

        • 将克隆下来的代码提交到自己gitee中
      • 在文件{根目录}.gitconfig中修改提交的仓库

      配置Jenkins

      • 新建任务 选择第一个

      • 在源代码管理中使用git

        • 使用你的代码仓库
      • 我当前项目地址为:https://gitee.com/ZYX315/QingShan.git

      • 构建触发器

        • 轮询 SCM

        2分钟访问gitee.com是否有提交信息

        H/2 * * * *

      • 构建环境

        勾上Delete workspace before build starts

      • 构建

        • 选择执行shell
        #!/bin/bash
        # 获取短版本号
        GITHASH=`git rev-parse --short HEAD`
        docker stop qs.core.webapi
        docker rm qs.core.webapi
        docker images | grep "qs.core.webapi" | awk '{print $1":"$2}' | xargs docker rmi
        echo ---------------Building Docker Image...------------------
        docker build -t qs.core.webapi:$GITHASH .
        docker tag qs.core.webapi:$GITHASH qs.core.webapi:latest
        echo ---------------Launching Container...------------------
        docker run --name qs.core.webapi -p 9999:80 -d qs.core.webapi:latest 
        

        如果无法连接mysql需要添加这段话
        docker network connect my_net qs.core.webapi
        根据自己的项目把qs.core.webapi替换成自己的

        具体可参考Jenkins+Docker实现自动化部署

    无法连接mysql

    bridge桥接模式

  • 相关阅读:
    Scanner类
    16 String类
    15_面向对象_01
    14_面向对象_01_2 完整格式
    14_面向对象_01_1 成员变量 成员方法
    13_面向对象辅助看懂实例
    面向对象的基本概念
    Servlet_03 进阶随笔 两种域的运用调用方式
    Servlet_03 资源跳转 关键字
    Servlet_02 资源跳转
  • 原文地址:https://www.cnblogs.com/qs315/p/14671172.html
Copyright © 2011-2022 走看看