离线环境下自动化部署python环境(含openssl)
遇到有项目要在内网环境下安装python项目,所以空余时写了自动化部署python环境和python项目的脚本,由于项目涉密,这里仅提供自动化部署python环境的shell脚本,包括openssl的版本判断和安装
注 需要将相关安装包放在data目录下,或者修改脚本中的路径
没找到上传附件的地方,那就贴下路径好了
openssl的:1.0.2及上版本即可,脚本会自己判断的,若不是内网环境的话把下面这句话替换进去就行,用不着下载下来再放进去
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
python下载地址,自己挑版本,我用的是3.7.3系列
https://www.python.org/downloads/
#!/bin/bash #install openssl #Author:cyt echo "开始下载python所需依赖包" yum -y install gcc gcc-c++ zlib zlib-devel libffi-devel openssl openssl-devel openssl=`openssl version|awk -v FS=" " '{print $2}'|tr -cd "[0-9]" 2>&1` echo `openssl version` if [[ $openssl -ge "102" ]]; then echo "符合python3所需要的openssl版本,开始安装python环境" else echo "openssl版本过低,即将升级openssl版本" cd /data/ tar zxvf /data/openssl* cd /data/openssl* ./config --prefix=/data/openssl make make install mv /usr/bin/openssl /usr/bin/openssl.bak mv /usr/include/openssl /usr/include/openssl.bak ln -s /data/openssl/bin/openssl /usr/bin/openssl ln -s /data/openssl/include/openssl /usr/include/openssl echo “/data/openssl/lib” >> /etc/ld.so.conf ldconfig -v openssl=`openssl version 2>&1` echo $openssl if [[ $openssl =~ "1.0.2" ]]; then echo "openssl版本已更新,开始安装python环境" else echo "不好意思,安装openssl失败,请检查环境或手动安装" fi fi #install python cd /data/ tar zxvf /data/Python-3.7* cd /data/Python* export LANG=zh_CN.UTF-8 export LANGUAGE=zh_CN.UTF-8 ./configure --prefix=/data/python3 --with-ssl make && make install ln -s /data/python3/bin/python3 /usr/bin/python3 ln -s /data/python3/bin/pip3 /usr/bin/pip3 python=`python3 -V 2>&1` echo $python if [[ $python =~ "3.7" ]]; then echo "python环境安装完成" else echo "不好意思,python安装失败,请检查环境或手动安装" fi