jenkins:docker容器安装python3环境

前言

上一篇我们安装在docker中安装了jenkins,运行jenkins工作目录workspaces是在容器内运行的,因此如果执行python代码,容器内部需要安装python3环境.

构建的时候输入pip3,提示:pip3: not found

 进jenkins容器

docke ps

查询正在运行容器id

docker exec -it -u root e7d57efc9142 /bin/bash

docker exec -it -u root 容器id /bin/bash

查看当前操作系统cat /etc/issue

[root@VM_0_11_centos ~]# docker exec -it -u root e7d57efc9142 /bin/bash
root@e7d57efc9142:/# cat /etc/issue
Debian GNU/Linux 9 \n \l

这里查到的是Debian系统(不是ubuntu, 也不是centos),这里yum是没有的,所以不能用yum安装了,这里用apt-get代替yum
先执行更新apt-get

apt-get update

容器内部安装python3环境

进入容器工作目录

cd /var/jenkins_home/

创建python3文件

mkdir python3

进入python3目录

cd python3/

下载python3 package

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

解压下载的tar包

tar -xvf Python-3.6.8.tgz

解压完之后需要编译Python-3.6.8包下的文件,先cd过去执行完这句命令之后,把python的安装目录指定一下,这样的话,里面的一些bin目录、lib目录就都会存放在这个目录下面。
如果不指定这个安装目录的话,最后python的安装文件将分散到linux的默认目录,不在一块。我们指定安装目录,以后卸载的话直接删除目录就可以干净卸载了。

./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

make编译安装

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

 添加软链接

添加python3软链接

find / -name python3

ln -s /var/jenkins_home/python3/bin/python3 /usr/bin/python3

添加pip3软链接

find / -name pip3

ln -s /var/jenkins_home/python3/bin/pip3 /usr/bin/pip3

检查环境

输入pip3 和python3检查环境

ssl问题

如果pip3安装的时候遇到报ssl相关问题:pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

这个是因为缺少ssl依赖包,网上的解决方案是yum install openssl-devel ,由于Debian系统没有yum,用apt-get安装

安装完成之后只能解决系统自带的python2对应的pip安装问题,无法解决python3的pip3安装问题。

解决办法:上面编译的时候需加上参数 --with-ssl

重新执行make和make install 就可以了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用和引用的信息,您在Docker安装Jenkins和Allure,但在执行命令时遇到了"command not found"的错误。根据引用的信息,您可能是以普通用户登录Jenkins容器并尝试安装Allure,而Jenkins是以普通用户运行的。这可能导致Allure命令无法被找到。 要在Docker中为Jenkins安装Allure环境,您可以尝试以下步骤: 1. 通过管理员身份登录Jenkins容器: ``` docker exec -u 0 -it <container_id> bash ``` 2. 在管理员权限下安装Allure: ``` apt-get update apt-get install -y allure ``` 3. 退出管理员身份,并以普通用户身份登录Jenkins容器: ``` exit docker exec -u <username> -it <container_id> bash ``` 4. 确认Allure已成功安装: ``` allure --version ``` 通过以上步骤,您应该能够在Docker中为Jenkins成功安装Allure环境。请确保您替换`<container_id>`和`<username>`为您实际使用的容器ID和用户名。 引用: : 我的docker中的Jenkins是已经安装allure了的,但是jenkins提示:bash: allure: command not found。 : Jenkins中allure的安装和使用问题 jenkins@0d71811f7c01:~/workspace/first_python$ allure generate ./unit/allure_result -o ./unit/allure_report bash: allure: command not found。 : 原来是我是通过管理员进入jenkins容器安装了allure的,而jenkins是以普通用户去运行的,所以我又以普通用户登录安装allure。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [dockerJenkins安装allure和使用,bash: allure: command not found](https://blog.csdn.net/chuancheng_zeng/article/details/109880574)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值