• jenkins安装配置


    1、下载jenkins.war放入tomcat/webapp下

    2、运行后输入密码解锁jenkins

    2、启动时tomcat警告或报错,报错信息是内存不够,需要在运行jekin的tomcat下修改conf/context.xml配置,在context节点下添加如下配置扩大缓存内存:

    <Context>
       <Resources cachingAllowed="true" cacheMaxSize="102400" />
    </Context>

    3、输入后会卡住,这时需要修改/root/.jenkins下的hudson.model.UpdateCenter.xml文件,把默认内容

    <?xml version='1.0' encoding='UTF-8'?>
     <sites>
       <site>
        <id>default</id>
        <url>http://updates.jenkins-ci.org/update-center.json</url>
       </site>
    </sites

    的url替换为:

    http://mirror.xmission.com/jenkins/updates/update-center.json

    原因是:这个地址在外国的服务器,因为墙的原因,下载初始化界面所需插件不了,就一直处于等待状态

    4、点击推荐插件安装完成后又会界面卡死,这是因为/root/.jenkins/config.xml的这个值:

     authorizationStrategy  class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy"
    这个权限对应“登录用户可以做任何事"。不知道为啥登录不了所以做不了任何事。
    替换为class="hudson.security.AuthorizationStrategy$Unsecured"/>
    5、重启tomcat后进入点击系统配置进行配置

     6、如果不是直接发布到tomcat,而是采用ssh把构建好的war包上传到指定服务器指定位置,那么可以使用SSH方式,步骤如下:

    a、安装 publish over ssh 插件,点击-系统管理-系统插件-可选插件中 直接搜 publish over ssh 点击安装,安装完之后,重启jenkins

    b、配置SSH:点击- 系统管理-系统设置-拉到最下面就有这个窗口了,如果系统不能读取/root/.ssh/id_rsa,有可能是权限问题,或者直接把私钥全部拷贝到key输入框中

     其中私钥的生成步骤插曲如下:

    ----------------------------------------------------------SSH私钥生成 begin------------------------------------------

    其实很简单,只需要两个指令即可。

    ssh-keygen -t rsa -P ''
    ssh-copy-id -i ~/.ssh/id_rsa.pub <IP地址>

    假设有两台服务器,A是Jenkins构建服务器,B是应用服务器,A构建好应用之后,将包传到B进行发布。

    在A上面执行 ssh-keygen -t rsa -P '', -P后面两个单引号表示密码为空,然后一直回车即可

    之后会在~/.ssh目录下创建两个文件id_rsa(私钥),id_rsa.pub(公钥)

    接下来继续在A上执行 ssh-copy-id -i ~/.ssh/id_rsa.pub <IP>,表示将公钥发给B,发到B服务器的~/.ssh目录下,如果上传私钥成功就可以到B服务器上查看~/.ssh/authorized_keys这个文件是否已创建,然后使用 ssh B服务器的ip地址 免密连接到B服务器,如果能免密连接上则证明配置成功

    参考:https://www.cnblogs.com/jager/p/5986563.html

    ----------------------------------------------------------SSH私钥生成 end------------------------------------------

       c、系统SSH私钥配置好后,就可以在各个工程下配置具体上传的位置了,点击具体工程进入-->配置-->构建后操作 选择 send build artifacts over SSH ,弹出工程SSH的配置

     配置好后,就是设置权限和用户:

    添加用户:https://www.cnblogs.com/kevingrace/p/6019707.html

    设置权限:https://blog.whsir.com/post-1785.html

    1、安装Role-based Authorization Strategy插件

    系统管理-管理插件-可选插件中安装Role-based Authorization Strategy

    安装后重启jenkins使其生效

    2、在系统管理-Configure Global Security-授权策略-Role-Based Strategy,勾选Role-Based Strategy保存

    3、此时在系统管理下,就可以看到Manage and Assign Roles了

    4、管理角色

     

    Global roles-Role to add-添加一个kf,只勾选一个Overall-Read

     

    Project roles-Role to add-添加一个Team-kf,Pattern填写kf.*(这里kf.*表示以kf开头的项目)

     

    5、分配角色

     

    Global roles-User/group to add-添加一个已存在的用户,并勾选上kf

     

    Item roles-User/group to add-继续添加一次用户,并勾选上Team-kf,授予kf开头的项目权限

     

    6、创建项目

    我这里创建了两个项目

    当whsir用户登录时候,只能看到kf-123的项目,并且无法进行系统设置

    参考文章:

    http://www.jianshu.com/p/c420bca3a855

    http://zengestudy.blog.51cto.com/1702365/1782494

    jenkins执行脚本时权限不够的解决方法:

    yum安装的Jenkins 配置文件默认位置/etc/sysconfig/jenkins
    默认jenkins服务以jenkins用户运行,这时在jenkins执行ant脚本时可能会发生没有权限删除目录,覆盖文件等情况。可以让jenkins以root用户运行来解决这个问题。

    1.将jenkins账号分别加入到root组中
    gpasswd -a jenkins root

    2.修改/etc/sysconfig/jenkins文件中,
    #user id to be invoked as (otherwise will run as root; not wise!)
    JENKINS_USER=root
    JENKINS_GROUP=root   (这个配置可以不加)

    可以修改为root权限运行
    重启服务,搞定。

  • 相关阅读:
    2020软件工程作业06
    2020软件工程作业05
    jdk13.0.2安装完成后,使用binjlink.exe 命令配置jre报错
    软件工程04(已报废)
    2020软件工程作业03
    软件工程问题解决清单
    软件工程作业02
    2020软件工程作业01
    2020软件工程个人作业06——软件工程实践总结作业
    2020软件工程作业05
  • 原文地址:https://www.cnblogs.com/javabg/p/10521864.html
Copyright © 2020-2023  润新知