Linux Shell 实现一键部署二进制Python

news2024/9/21 4:27:24

python 前言

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。 Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。

download python

pythonPython 编程语言的软件存储库文档
downloaddownload参考

Linux 各系统下载使用参考

Red HatRocky Linux Oracle Linux

AlmaLinux 

ubuntususelinuxesxiRHEL标准安装系统安装参考YUM参考

MobaXterm 远程连接工具

Red Hat Enterprise 9.0 文档Kickstart 生成器
downloaddownloaddownloaddownloaddownloaddownloaddownload参考参考配置参考download参考Kickstart 
版本兼容性

创建一键部署Python

  • python 安装位置/opt/python 
  • 实现在线下载python,编译安装python,环境变量设置,插件下载安装,版本获取,删除安装包
vi /install_python.sh
#!/bin/bash
# -*- coding: utf-8 -*-
# Author: CIASM
# update 2023/05/17

directory=/root
python_directory_check=/opt/python
python_url=https://www.python.org/ftp/python/3.10.11/
python_tgz=Python-3.10.11.tgz
python_directory=Python-3.10.11

virtualenv_directory=virtualenv
virtualenv_url=https://files.pythonhosted.org/packages/d6/37/3ff25b2ad0d51cfd752dc68ee0ad4387f058a5ceba4d89b47ac478de3f59/virtualenv-20.23.0.tar.gz
setuptools_url=https://files.pythonhosted.org/packages/fd/53/e5d7ae40d03e4ed20b7cba317cf9c0c97097c8debb39f9d72d182a6578a2/setuptools-67.7.2.tar.gz
wheel_url=https://files.pythonhosted.org/packages/fc/ef/0335f7217dd1e8096a9e8383e1d472aa14717878ffe07c4772e68b6e8735/wheel-0.40.0.tar.gz
filelock_url=https://files.pythonhosted.org/packages/24/85/cf4df939cc0a037ebfe18353005e775916faec24dcdbc7a2f6539ad9d943/filelock-3.12.0.tar.gz
distlib_url=https://files.pythonhosted.org/packages/58/07/815476ae605bcc5f95c87a62b95e74a1bce0878bc7a3119bc2bf4178f175/distlib-0.3.6.tar.gz
platformdirs_url=https://files.pythonhosted.org/packages/9c/0e/ae9ef1049d4b5697e79250c4b2e72796e4152228e67733389868229c92bb/platformdirs-3.5.1.tar.gz

install_python (){
if [ ! -d ${python_directory_check} ];then
echo "install python"
if [ $? -eq 0 ];then 

echo "Dependencies required to install Python"
yum install -y gcc openssl-devel bzip2-devel libffi-devel zlib-devel make cmake wget net-tools

echo "download Python"
wget -N -P $directory $python_url/$python_tgz

echo "make install Python"
tar -xf $directory/$python_tgz -C $directory
cd $directory/$python_directory && ./configure --prefix=$python_directory_check && make -j 4 && make install

echo "envionment variables Python"
echo 'export PATH=$PATH:/opt/python/bin' >> ~/.bashrc
source ~/.bashrc

echo "python environment variable soft linking"
ln -s $python_directory_check/bin/* /usr/bin/

echo "install Python virtualenv Dependent package"
mkdir -p /$virtualenv_directory
wget -N -P /$virtualenv_directory $virtualenv_url $setuptools_url $wheel_url $filelock_url $distlib_url $platformdirs_url

echo "virtualenv Dependent package"
pip3 install /$virtualenv_directory/*.tar.gz
virtualenv -p $python_directory_check/bin/python3 venv
source venv/bin/activate

echo "check Python version"
python3 --version | awk '{print $2}'
pip3 --version | awk '{print $2}'
virtualenv --version | awk '{print $2}'
wheel version | awk '{print $2}'

echo "Delete the downloaded installation package"
rm -rf $directory/Python*
rm -rf /$virtualenv_directory/*.tar.gz

#pip3 install virtualenv
#virtualenv -p $python_directory_check/bin/python3 venv
#source venv/bin/activate

   echo -e "\033[32mThe python Install Sussess...\033[0m" 
  else
   echo -e "\033[33mThe python Install Failed...\033[0m" 
    exit 1
   fi
  else
   echo -e "\033[31mThe python Install already...\033[0m"
fi
}

main (){
install_python
}

main

执行安装

sh /install_python.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/536326.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

监控知识体系

从来没讲过运维,因为我觉得运维这种东西不需要太多的知识面,然后我一个做了运维朋友告诉我大错特错,他就是从3K的运维一步步到40K的,甚至笑着说:我现在感觉自己什么都能做。 既然讲,就讲最重要的吧。 监控…

接口自动化测试分层设计与实践总结

本文以笔者当前使用的自动化测试项目为例,浅谈分层设计的思路,不涉及到具体的代码细节和某个框架的实现原理,重点关注在分层前后的使用对比,可能会以一些伪代码为例来说明举例。 接口测试三要素: 参数构造 发起请求&a…

NA、商业和分销市场通盘布局,华为“四大角色”浮出水面

作者 | 曾响铃 文 | 响铃说 数字经济深化发展,谋求数字化转型的行业、企业客户,越来越渴望满足自身需求的产品或解决方案。 这给从事转型服务的ICT厂商们提出了新的挑战。 在客户面前,拥有核心技术与支持能力的企业,与进击数字…

yolov1

1、对precision(精确度)和recall(召回度)的理解 1、TP TN FP FN的概念 TP(True Positives)意思就是被分为了正样本,而且分对了。 TN(True Negatives)意思就是被分为了负…

原装美国Agilent安捷伦34970A数据采集仪

Agilent安捷伦34970A数据采集仪 3槽主机,内置GPIB和RS232接口 6 1/2 位(22 位)内部 DMM,每秒扫描多达 250 个通道(选件 001 不可用) 8个开关和控制插件模块可供选择 内置信号调理可测量热电偶、RTD 和热敏电…

linux基础(IO)中

目录: 1.回顾上一篇的文件系统调用接口 2.返回值文件描述符 3.文件描述符分配规则 ---------------------------------------------------------------------------------------------------------------------------- 1.回顾上一篇的文件系统调用接口 open &…

【数据结构】二叉树进阶题目练习

文章目录 二叉树创建字符串二叉树的分层遍历1二叉树的分层遍历2给定一个二叉树, 找到该树中两个指定节点的最近公共祖先二叉树搜索树转换成排序双向链表二叉树展开为链表根据一棵树的前序遍历与中序遍历构造二叉树根据一棵树的中序遍历与后序遍历构造二叉树二叉树的前序遍历 非…

学爬虫,吃牢饭,卑微前端小丑复制antd的icon图标真的太难啦,我用python几秒扒完

目标需求 最近用reactviteantd写了个后管项目,在菜单管理中,需要用户选择菜单的icon图标。 如下: 而在react中使用antd UI库,每个组件都是需要单独导入的,也就是说,如果我要用到所有icon,我需…

亚马逊云科技进一步加快BMW Group的Analytics步伐

BMW Group和亚马逊云科技于2020年宣布达成全面战略合作。本次合作的目标是通过将数据分析置于决策中心,进一步加快BMW Group的创新步伐。本次合作的一个关键要素是进一步开发BMW Group的云数据中心(CDH)。这是在云端管理全公司数据和数据解决…

windows_exporter 部署

目录 - 配置服务- 配置prometheus - 配置服务 下载地址: https://github.com/prometheus-community/windows_exporter/releases 从github上下载windows_exporter.msi(我下载的是windows_exporter-0.22.0-amd64.msi)cmd命令:msie…

对 API 中敏感数据检测,用这个插件就好了

Postcat 中的 openDLP 插件基于 openDLP 开源项目,针对 Postcat 场景实现了敏感 API 发现功能,通过扫描 API 文档,识别该 API 是否可能是一个涉及敏感数据的 API。 目前内置支持 17 类敏感数据类型,可以通过自定义正则支持更多类型…

2023年安全岗秋招经验分享,纯干货,建议收藏!

需要准备的几个方向 简历自我介绍计算机网络操作系统(操作系统原理,Linux,Windows)数据库算法(Leetcode)编程语言(Python,C,go等)安全知识(很多很杂,建议根据…

python3 爬虫相关学习3:response= requests.get(url)的各种属性

目录 1 requests.get(url) 的各种属性,也就是response的各种属性 2 下面进行测试 2.1 response.text 1.2 response.content.decode() 1.2.1 response.content.decode() 或者 response.content.decode("utf-8") 1.2.2 response.content.decode(…

实验室信息管理系统源码,LIS系统源码

云LIS系统是医院信息管理的重要组成部分之一,系统集申请、采样、核收、计费、检验、审核、发布、质控、查询、耗材控制等检验科工作为一体的网络管理系统。LIS系统不仅是自动接收检验数据,打印检验报告,系统保存检验信息的工具,而…

平抑风电波动的电-氢混合储能容量优化配置(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

22届硕士,去年秋招拿了字节跳动offer,有一说一,不是很难进

自从抖音短视频APP火了之后,起公司字节跳动也逐渐向着大厂靠拢,相信大家都已经对这家公司很熟悉了,尤其是近几年来,对它的认识也在不断刷新,它惊人的发展速度确实让行业内人刮目相看,如今很多年轻人也想要挤…

【工作记录】springsecurity从入门到实战(一)

一、介绍 在web应用开发中,安全无疑是十分重要的,目前最流行的安全框架莫过于shiro和springsecurity了。 以下是二者简单的一个对比: SpringSecurityShiro基本功能完善完善文档完善程度强大强大社区支持度依托于Spring,社区支持强大强大集…

Flutter仿写微信导航栏快速实现页面导航

文章目录 前言使用TabBar实现TabBar介绍TabBar的重要属性说明TabBarView介绍TabBarView的重要属性TabBar总结TabBar实现底部导航的例子 BottomNavigationBar实现BottomNavigationBar介绍BottomNavigationBar实现底部导航栏的例子 总结BottomNavigationBarTabBar根据实际情况选择…

代码随想录算法训练营day43 | 1049. 最后一块石头的重量 II ,494. 目标和,474.一和零,01背包问题总结

代码随想录算法训练营day43 | 1049. 最后一块石头的重量 II ,494. 目标和,474.一和零 1049. 最后一块石头的重量 II解法一:动态规划 494. 目标和解法一:动态规划 474.一和零解法一:动态规划 01背包问题总结 1049. 最后…

商场导航地图系统,商场导航怎么实现?

商场导航怎么实现?在商场里面,手机上的导航往往接收不了信号或者不支持,由于室内不只是平面的,跟室外导航有很大的区别,因此,室内如何快速导航就成了现代化发展的趋势。电子地图作为大家最喜闻乐见的高效应…