将上一篇文章最后新建好的py文件复制到jenkins工作台中:

jenkins容器中执行命令:

cp /var/jenkins_home/auto_test/test_demo.py /var/jenkins_home/workspace/test_demo/

jenkins容器降低java版本

jenkins安装插件ruby-runtime时,用java11无法安装,降java版本问题解决。

1. 安装低版本的jdk,参考LINUX下 JAVA环境安装配置

2. 配置低版本的java环境变量

  • 修改容器中的/etc/profile文件:

vim /etc/profile

  • 编辑一下内容并保存退出:
export JAVA_HOME=/autotest/jdk1.8.0_301
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  • 使配置生效:

source /etc/profile

容器中的环境变量修改,似乎无法改变jenkins的环境变量。

3. exit #退出容器同时也关闭容器

docker systemctl stop docker  关闭docker

后来又尝试修改docker外部的java版本。

修改docker启动jenkins时的环境变量:

1. 前提,本地已经下载好java低版本的jdk并安装配置好环境变量,具体步骤参考:

LINUX下 JAVA环境安装配置

2. 配置好后宿主机的java环境后,需要关闭docker,修改docker容器中配置的java路径:/var/lib/docker/containers/容器id/config.v2.json

3. 打开找到关于JAVA_HOME,PATH的路径。(可以先备份备用,万一失败了可以修复)

4. 将对应的低版本的java的jdk路径作为JAVA_HOME,并将PATH中关于jdk的路径换成低版本的,保存退出。

5.  重启docker:  systemctl restart  docker

6.  重启jenkins容器:docker restart autotest-jenkins

7. 进入docker容器:docker exec -it autotest-jenkins /bin/bash

8. 再次进入jenkins中的插件管理:ruby-runtime插件就可以使用了。

解决 sh: java: command not found 问题

上面修改了config.v2.json文件后去启动docker容器时遇到了错误,导致每次启动看不出任何问题,但是每次查到的状态都是Exited。后来查了一下怎么去看docker的log,问题才有解决方向。

具体解决办法:

1. 使用命令查log:

docker logs autotest-jenkins

最下面是最新的log,其中报了很多错误:/usr/local/bin/jenkins.sh: line 37: exec: java: not found

查了很多地方,根据这个错误提示应该是jenkins.sh这个文件中的java配置不正确导致的

2. 拿到容器中的/usr/local/bin/jenkins.sh文件拷贝到宿主机:

docker cp autotest-jenkins:/usr/local/bin/jenkins.sh /autotest

3. 将jenkins.sh文件加入如下配置,并保存退出
#!/bin/bash
JAVA_HOME=/usr/java/jdk1.8.0_152
export PATH=$PATH:$JAVA_HOME/bin

4. 将此文件再copy回容器中:

docker cp /autotest/jenkins.sh autotest-jenkins:/usr/local/bin/jenkins.sh

5. 如果还有问题,把容器中的环境变量也修改一下,方法类似于上面步骤:

docker cp autotest-jenkins:/etc/profile /autotest

修改后,将修改的文件拷贝回容器中:

docker cp /autotest/profile autotest-jenkins:/etc/profile

6. 再次重启jenkins容器,大功告成:

docker restart autotest-jenkins

进入容器:docker exec -it autotest-jenkins /bin/bash
又可以继续使用了。

重新安装python的步骤(记录在这里,做备用的不够完善。)

先将python卸载

apt-get --purge remove  python

apt-get autoremove python

  • 重新安装python步骤:

# cd /var/jenkins_home/

# mkdir python3

# cd python3/

# wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz

# tar -xvf Python-3.6.8.tgz

# ls

Python-3.6.8  Python-3.6.8.tgz

# cd Python-3.6.8

# ./configure --prefix=/var/jenkins_home/python3

执行 ./configure --prefix=/var/jenkins_home/python3时报上面错:configure: error: no acceptable C compiler found in $PATH

apt-get 安装依赖包

这个是因为缺少gcc相关依赖包,使用apt-get代替yum安装相关依赖包

apt-get -y install gcc automake autoconf libtool make

apt-get -y install make*

apt-get -y install zlib*

apt-get -y install openssl libssl-dev

apt-get install sudo

执行步骤:apt-get -y install make*报错

The following packages have unmet dependencies:

libqt4-dbus : Depends: qdbus (= 4:4.8.7+dfsg-11+deb9u1) but it is not going to be installed

make : Conflicts: make-guile but 4.3-4.1 is to be installed

make-guile : Conflicts: make

执行步骤:# apt-get -y install zlib*报错

The following packages have unmet dependencies:

zlib1g-dbg : Depends: zlib1g (= 1:1.2.8.dfsg-5) but 1:1.2.11.dfsg-2 is to be installed

E: Unable to correct problems, you have held broken packages.

The following packages have unmet dependencies(未能满足依赖关系)解决办法:

aptitude与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。与 apt-get 不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。

# apt-get install aptitude

# aptitude install libqt4-dbus

# aptitude install zlib1g-dbg

# aptitude install make

重新执行上面的命令还是报错,此处坑比较多

继续:

apt-get -y install openssl libssl-dev

apt-get install sudo

make编译安装

在/var/jenkins_home/python3/Python-3.9.2目录执行make和make install 安装

./configure --prefix=/var/jenkins_home/python3 --with-ssl

make

make install

又报错了:

Traceback (most recent call last):
  File "<frozen zipimport>", line 520, in _get_decompress_func
ModuleNotFoundError: No module named 'zlib'

花了好久没解决,果断放弃了。

【docker-jenkins搭建】docker的jenkins容器java版本(四)相关推荐

  1. Git仓库、Jenkins搭建、应用Jenkins、管理应用服务器

    一.Jenkins基础 1.1 Jenkins简介 1.1.1 什么是Jenkins Jenkins是一款非常流行的CI(持续集成)软件,用于构建和测试各种项目. 1.1.2 Jenkins特点 可以 ...

  2. Docker入门-搭建docker私有仓库

    Docker Hub 目前Docker官方维护了一个公共仓库Docker Hub,其中已经包括了数量超过15000个镜像.大部分需求都可以通过在Docker Hub中直接下载镜像来使用. 注册登录 可 ...

  3. Docker Compose 搭建 Docker Registry 私服

    简介 官方的 Docker Hub 是一个用于管理公共镜像的地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.你也可以选择通过 Docker Registry 搭建一个属于自己的 ...

  4. 【Docker】搭建Docker私库Harbor

    1.环境 软件 版本 Ubuntu 20.04.2 docker 20.10.6 docker-compose 1.29.2 2.安装方式 可在线安装或者离线安装.本次安装采用离线安装. 3.下载Ha ...

  5. ipc620中文版最新版本_(一)Windows10 家庭中文版Docker安装 搭建docker开发环境

    首先因为系统的版本问题,Windows的某些版本目前还是不支持,如果必须安装此软件,可以按规定提示,选择适合的系统,Windows 10专业版或企业版.但是,那需要成本,且非常麻烦. 为了以后也会使用 ...

  6. 【Android APT】注解处理器 ( 配置注解依赖、支持的注解类型、Java 版本支持 )

    文章目录 一.注解处理器 依赖 编译时注解 二.设置 注解处理器 支持的注解类型 三.设置 注解处理器 支持的 Java 版本 四.博客资源 Android APT 学习进阶路径 : 推荐按照顺序阅读 ...

  7. 记录使用docker容器技术搭建gitlab与jenkins

    目录 一.安装Xshell和Xftp 二.安装docker容器 三.安装docker-compse 四.通过docker-compose.yml 安装镜像容器 1.示例安装mysql 2.jenkin ...

  8. jenkins+maven+docker java项目编译、打包、构建镜像、上传私有仓库、web容器部署

    本环境非常简单,主要实现如下流程功能 员工通过eclipse提交java代码---gitlab更新代码----jenkins通过maven编译打包----生成war包----制作docker镜像并上传 ...

  9. 搭建Jenkins+SpringBoot+Docker的微服务持续集成框架

    前言 近一.两年,SpringBoot和Docker可以说非常的火热啊,而早在2015年的时候我就弄过一下Docker,不过由于职位和跳槽等种种原因,2016年就很少搞了,不过现在再捡起来也是很容易的 ...

最新文章

  1. APK 本地化和去广告
  2. DynamicPropertyAccessor Expression lambda
  3. git 提交命令_工作总结:Git的学习和使用,最详细的Git教程,从入门到精通
  4. hadoop的开发工具_Hadoop开发工具简介
  5. 怎样用计算机kd求平均数,利用pandas和numpy计算表中每一列的均值
  6. 【Git入门之十四】Git GUI
  7. 《现在的泪,都是当年脑子进的水》读书笔记
  8. datatables java 分页_DataTables后台分页的使用
  9. php1108脱机使用,电脑打印机脱机怎么重新连接
  10. Cocoapods使用代理
  11. 不用计算机时自动关掉屏幕,电脑怎么取消自动黑屏
  12. 【LG-P5072 [Ynoi2015]】盼君勿忘
  13. 操作系统真像还原 - MBR主引导程序初体验
  14. Linux 下固态硬盘恢复误删除文件
  15. 抖音直播间千川投放有用吗?直播间投放分析有什么技巧
  16. 华侨大学教务系统评教脚本----一键评教
  17. 勃林格殷格翰战略入股新瑞鹏,进一步拓展中国宠物市场
  18. Oracle 官网网址
  19. 【2013年度CSDN博客之星】评奖:全文五言句,俺也拉个票
  20. 独家 | 木瓜移动将冲刺香港上市:已任命刘凡为新CFO,赵巨涛退出

热门文章

  1. 网页视差滚动效果html,30个使用视差滚动效果的时尚网页设计欣赏
  2. mathtype嵌入word后仍为灰色怎么解决?
  3. Date问题:字符串格式时间进行加减
  4. Micro-expression recognition: an updated review of current trends,challenges and solutions 论文笔记
  5. 如何在Mirth Connect中创建和调用自定义Java代码
  6. 洛基国际英语推荐的20首英文歌曲
  7. 【北京SEO】怎样删除百度快照
  8. 解决markdownPad2导出的pdf显示不出图片问题
  9. 微信支付与登录之项目开发阶段1
  10. 数据运营的整个过程是怎么样的