zoukankan      html  css  js  c++  java
  • Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(一):Jenkins安装

    Related image

    2019/1/31更新,经过我一段时间的使用
    建议大家的jenkins还是不要使用docker方式安装
    建议大家的jenkins还是不要使用docker方式安装
    建议大家的jenkins还是不要使用docker方式安装

    非docker方式安装,请参考linux centos 安装Jenkins(非docker方式)

    以下是原文内容


    写在前面

    其实园子里很多大佬都写过,我也是一个搬运工很多东西不是原创的,不过还是想把自己安装的过程,记录下来如果能帮到大家的忙,也是一件功德无量的事;

    运行环境

    centos:7.2
    cpu:1核 2G内存 1M带宽
    其实用的腾讯云

    安装jenkins

    这里的jenkins就不从docker hub里面直接pull镜像安装了,为什么呢,我这里引用大佬的原话:

    首先不直接从Docker Store上直接Pull Jenkins 的 Image 文件,因为待会需要进行dotnet core 的 Docker自动部署,需要对宿主机上的Docker进行直接操作,那么需要挂载 Docker 给 Jenkins Image,所以现在需要自己动手编写 Dockerfile 构建自定义的Jenkins。

    https://www.cnblogs.com/LongJiangXie/p/7517909.html

    1、构建自定义的Dockerfile

    # touch Dockerfile
    # vim Dockerfile
    

    输入以下内容:

    FROM jenkins
    
    USER root
    #清除了基础镜像设置的源,切换成腾讯云的jessie源
    #使用非腾讯云环境的需要将 tencentyun 改为 aliyun
    RUN echo '' > /etc/apt/sources.list.d/jessie-backports.list 
      && echo "deb http://mirrors.tencentyun.com/debian jessie main contrib non-free" > /etc/apt/sources.list 
      && echo "deb http://mirrors.tencentyun.com/debian jessie-updates main contrib non-free" >> /etc/apt/sources.list 
      && echo "deb http://mirrors.tencentyun.com/debian-security jessie/updates main contrib non-free" >> /etc/apt/sources.list
    #更新源并安装缺少的包
    RUN apt-get update && apt-get install -y libltdl7 && apt-get update
    
    ARG dockerGid=999
    
    RUN echo "docker:x:${dockerGid}:jenkins" >> /etc/group 
    
    # 安装 docker-compose 因为等下构建环境的需要
    RUN curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    
    RUN chmod +x /usr/local/bin/docker-compose
    

    2、build镜像

    docker build . -t auto-jenkins
    

    1539831424590

    看到Successfully 莫名的心情愉悦。这就代表构建成功了;

    3、创建jenkins项目文件的挂载目录

    mkdir -p /var/jenkins_home
    

    4、修改目录权限

    这一步必不可少!会导致权限不足报错

    chown -R 1000 /var/jenkins_home
    

    5、run我们自定义jenkins镜像 auto-jenkins

    这里我用7080作为对外的jenkins ip(因为我的8080被占用了)

    docker run --name jenkins -p 7080:8080 -p 50000:50000 
    -v /var/run/docker.sock:/var/run/docker.sock 
    -v $(which docker):/bin/docker 
    -v /var/jenkins_home:/var/jenkins_home 
    -d auto-jenkins
    

    run之后使用docker ps 查看运行中的容器,如看到如下图,表示jenkins已正常启动:

    1539832220978

    6、完成jenkins安装

    访问 http://你的服务器ip:7080

    img

    这里需要安装密码,证明这是你的服务器,进入容器:

    docker exec -it jenkins /bin/bash
    cat /var/jenkins_home/secrets/initialAdminPassword
    

    复制密码填好,点击继续;

    img

    如图,点击Install suggested plugins,安装jenkins常用插件

    img

    安装完毕后:

    img

    来到这里,其实安装结束了,填写完管理员信息后,开始你的自动化部署之旅吧!

    接下来,请继续看我的另一篇文章 Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(二):部署

    [参考]

    https://www.cnblogs.com/LongJiangXie/p/7517909.html

  • 相关阅读:
    Java读取文件方法和给文件追加内容
    Java中String类的format方法使用总结
    Java时间戳与日期格式字符串的互转
    Eclipse遇到Initializing Java Tooling解决办法
    CSS的总结(选择器,伪类等...)
    Redis中的关系查询(范围查询,模糊查询等...)
    Redis中文显示为Unicode编码的解决办法
    用bash命令得到Windows一个目录下的所有文件并且把结果输入到一个文件
    MapReduce按照两个字段对数据进行排序
    Scala中的抽象类
  • 原文地址:https://www.cnblogs.com/xiaxiaolu/p/10041788.html
Copyright © 2011-2022 走看看