# 获取最新的软件包 apt-get update # 升级已安装的软件包 apt-get upgrade # 提前安装,以便接下来的配置操作 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
cd /usr/local/src wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz tar -zxvf Python-3.6.8.tgz mv Python-3.6.8 py3.6 cd py3.6
在 /usr/local/src/py3.6 安装目录下执行下面的命令
./configure --prefix=/usr/local/src/py3.6 make && make install
ln -s /usr/local/src/py3.6/bin/python3.6 /usr/bin/python3
ln -s /usr/local/src/py3.6/bin/pip3 /usr/bin/pip3
本身有的话忽略就行
敲 python3 和 pip3 有下图的结果就是正常了
需要在 python 项目生成一个 requirement.txt,具体教程可以看
https://www.cnblogs.com/poloyy/p/13953232.html
pip3 install -r requirements.txt
https://github.com/allure-framework/allure2/releases
选个最新版本的去下就行,或者自己挑一个版本
docker cp allure-commandline-2.13.6.zip jenkins1:/usr/local/src
unzip allure-commandline-2.13.6.zip
mv allure-2.13.6 allure chmod -R 777 allure
cat >> /root/.bashrc << "EOF" export PATH=/usr/local/src/allure/bin:$PATH export PATH=/usr/local/src/py3.6/bin:$PATH EOF
记得一行一个回车哦,不然就直接复制粘贴
source /root/.bashrc
allure --version python3 --version
export
这里可以看到很多容器本身自带的环境变量
cat >> /root/.bashrc<< "EOF" export PATH=$JAVA_HOME/bin:$PATH EOF
source /root/.bashrc
==========================================================
进docker容器, 加上-u root 以root用户权限进入容器
docker exec -it -u root 容器id /bin/bash
查看当前操作系统cat /etc/issue
root@cb8e397d5308:/# uname -a
Linux cb8e397d5308 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 GNU/Linux
root@cb8e397d5308:/# cat /etc/issue
Debian GNU/Linux 9 \n \l
这里查到的是Debian系统(不是ubuntu, 也不是centos),这里yum是没有的,所以不能用yum安装了,这里用apt-get代替yum
先执行更新apt-get
apt-get update
进入容器内部, linux安装python3环境,参考这篇https://www.cnblogs.com/yoyoketang/p/10195102.html
root@cb8e397d5308:/var/jenkins_home# cd /var/jenkins_home/
root@cb8e397d5308:/var/jenkins_home# mkdir python3
root@cb8e397d5308:/var/jenkins_home# cd python3/
root@cb8e397d5308:/var/jenkins_home/python3# wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# tar -xvf Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# ls
Python-3.6.8 Python-3.6.8.tgz
root@cb8e397d5308:/var/jenkins_home/python3# cd Python-3.6.8
root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# ./configure --prefix=/var/jenkins_home/python3
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.6... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... linux
checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/var/jenkins_home/python3/Python-3.6.8‘:
configure: error: no acceptable C compiler found in $PATH
See `config.log‘ for more details
执行 ./configure --prefix=/var/jenkins_home/python3
时报上面错:configure: error: no acceptable C compiler found in $PATH
这个是因为缺少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
在/var/jenkins_home/python3/Python-3.6.8目录执行make和make install 安装
./configure --prefix=/var/jenkins_home/python3 --with-ssl
make
make install
添加python3软链接
ln -s /var/jenkins_home/python3/bin/python3.6 /usr/bin/python3
添加pip3软链接
ln -s /var/jenkins_home/python3/bin/pip3 /usr/bin/pip3
输入pip3 和python3检查环境
root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# pip3
root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# python3
Python 3.6.8 (default, Jan 1 2020, 10:15:14)
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
使用pip3安装一个requests包
pip3 install requests
如果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安装
apt-get -y install openssl libssl-dev
安装完成之后只能解决系统自带的python2对应的pip安装问题,无法解决python3的pip3安装问题。
解决办法:上面编译的时候需加上参数 --with-ssl
./configure --prefix=/var/jenkins_home/python3 --with-ssl
重新执行make和make install 就可以了
也可以在python环境检查是否能导入ssl
root@cb8e397d5308:/var/jenkins_home/python3/Python-3.6.8# python3
Python 3.6.8 (default, Jan 1 2020, 10:15:14)
[GCC 6.3.0 20170516] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>>
测试开发CICD——Jenkins——通过jenkins容器安装python环境
原文:https://www.cnblogs.com/xiaobaibailongma/p/15169481.html