遇到有项目要在内网环境下安装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]" >&`
echo `openssl version`
if [[ $openssl -ge "" ]];
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 >&`
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-
export LANGUAGE=zh_CN.UTF-
./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 >&`
echo $python
if [[ $python =~ "3.7" ]];
then
echo "python环境安装完成"
else
echo "不好意思,python安装失败,请检查环境或手动安装"
fi

离线环境下自动化部署python环境(含openssl)的更多相关文章

  1. jenkins+git+maven搭建自动化部署项目环境

    简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.co ...

  2. Kafka~Linux环境下的部署

    概念 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据. 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素. 这些数据 ...

  3. 20181225-Linux Shell Bash环境下自动化创建ssh互信脚本

    20181225-Linux Shell Bash环境下自动化创建ssh互信脚本 1. 我的Blog 博客园 https://www.cnblogs.com/piggybaba/ 个人网站 http: ...

  4. python-pycharm中使用anaconda部署python环境

    pycharm中使用anaconda部署python环境 今天来说一下python中一个管理包很好用的工具anaconda,可以轻松实现python中各种包的管理.相信大家都会有这种体验,在pycha ...

  5. CentOS 5系统安装Django、Apache 、mod_wsgi部署Python环境教程

    Django,是一款针对Python环境的WEB开发框架,能够帮助我们构架快捷.简单的WEB框架设置,Django框架非常适合开发内容应用环境,所以在本文中,麦子将整理基于Centos系统部署安装Dj ...

  6. mosquitto在Linux环境下的部署/安装/使用/测试

    mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. ...

  7. 【转】mysql8.0 在window环境下的部署与配置

    [转]mysql8.0 在window环境下的部署与配置 今天在阿里云window服务器上配置mysql环境,踩了一些坑,分享出来.需要的朋友可以看看.额,或许有人要吐槽我为什么不在linux上去配置 ...

  8. 在win10环境下搭建 solr 开发环境

    在win10环境下搭建 solr 开发环境 2017年05月30日 09:19:32 SegaChen0130 阅读数:1050   在win10环境下搭建 solr 开发环境 安装环境  Windo ...

  9. 01.1 Windows环境下JDK安装与环境变量配置详细的图文教程

    01.1 Windows环境下JDK安装与环境变量配置详细的图文教程 本节内容:JDK安装与环境变量配置 以下是详细步骤 一.准备工具: 1.JDK JDK 可以到官网下载 http://www.or ...

随机推荐

  1. python client.py

    vi /Library/Frameworks/Python.framework/Versions//http/client.py vi /Library/Frameworks/Python.frame ...

  2. k8s 相关的命令

    查看node信息 kubectl describe node k8s-node- 查看dashboard token kubectl describe pod kubernetes-dashboard ...

  3. HTML5微信jssdk录音播放语音的方法

    HTML5微信jssdk录音播放语音的方法需要注意的2个问题1 就是一定要判断1秒内 录音都不算 ps:太短不能录音 2 录音超过1分钟 会发现正在录音突然消失 所以要写wx.onVoiceRecor ...

  4. javascript 忍者秘籍读书笔记(二)

    闭包的私有变量 function Ninja() { let feints = 0; this.getFeints = function () { return feints }; this.fein ...

  5. HTTP漫谈

    一.说明 1.1 当前背景说明 很多web的书包括web安全的书都会有一章介绍http协议,我就总恶意揣测作者是在凑字数,一般都直接跳过去. 相比TCP/IP这种各字段基于数值代号的协议,http这种 ...

  6. python的JSON库

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写. 1.json库的使用 使用 JSON 函数需要导入 json 库:import jso ...

  7. 63 网络编程(四)——TCP编程

    TCP编程 TCP编程是面向连接的数据传输,所以需要时用IO流来建立连接. 用户输出流到服务器,服务器输入流接收数据. 服务器输出流到用户,用户输入流接收. 基本流程 服务器端 创建服务器端:Serv ...

  8. json loggin 的使用,小案例

    import json import os Base_path = os.path.join(os.path.abspath(".."),"龙茂天日志.log" ...

  9. Lua代码编写规范

    开发中,大量使用lua,暂时根据当前状况,总结相对而言较好的规范,在多人协作中可以更好的开发.交流. 介绍  该文档旨在为使用lua编写应用程序建立编码指南. 制订编码规范的目的: 统一编码标准,通用 ...

  10. Java多线程分批发送消息的小例子

    需求: 假设有10万个用户,现在节假日做活动,需要给每个用户发送一条活动短信,为了提高程序的效率,建议使用多线程分批发送. 这里值得注意的是: 每开一个线程都会占用CPU的资源,所以线程根据所需要的条 ...