ARM架构离线Python环境部署
ARM架构离线Python环境部署指南
一、联网ARM机器环境准备
1. 安装Miniconda3
# 切换root管理员
su - root
# 下载ARM架构的Miniconda安装包
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh
# 执行自动安装(默认安装到/root/miniconda3)
bash Miniconda3-latest-Linux-aarch64.sh
## bash Miniconda3-latest-Linux-aarch64.sh -b -p /opt/miniconda3 # -b 静默安装 -p 指定安装路径
# 安装成功执行
source ~/.bashrc
# echo 'export PATH="/opt/miniconda3/bin:$PATH"' >> ~/.bashrc
# source ~/.bashrc
2. 接受服务条款
conda tos accept --override-channels --channel "https://repo.anaconda.com/pkgs/r"
conda tos accept --override-channels --channel "https://repo.anaconda.com/pkgs/main"
conda tos accept --override-channels --channel "https://repo.anaconda.com/pkgs/msys2"
3. 创建Python环境
# 使用conda-forge频道创建Python 3.12.1环境
conda create -n py312 -c conda-forge python=3.12.1 -y
# 可指定目录
conda create -p /opt/miniconda3/envs/py312 -c conda-forge python=3.12.1 -y
# 激活虚拟环境
conda activate py312
# 安装环境依赖包(python程序所需要的依赖包)
pip install -r requirements.txt
# 退出虚拟环境
conda deactivate py312
环境打包操作
1. 确认环境路径
conda info --envs
# 输出示例:/root/miniconda3/envs/py312
2. 生成依赖清单
pip freeze > requirements.txt #导出pip安装的依赖包
3. 下载离线依赖包
# 创建离线包目录
mkdir offline_packages
# 下载ARM架构的二进制包(注意平台标识)
pip download -r requirements.txt -d offline_packages \
--platform manylinux2014_aarch64 \ # ARM架构平台标识
--python-version 3.12 \ # Python版本
--only-binary=:all: # 仅下载二进制包
4. 打包环境目录
tar -czvf py312_env.tar.gz -C /root/miniconda3/envs/ py312
5. 准备离线文件包
需复制以下文件到离线机器:
Miniconda3-latest-Linux-aarch64.sh
py312_env.tar.gz
offline_packages
目录requirements.txt
二、离线ARM机器环境部署
1. 安装Miniconda3
# 切换root
su - root
# 执行安装脚本
bash Miniconda3-latest-Linux-aarch64.sh
# 激活环境变量
source ~/.bashrc
2. 恢复Python环境
# 解压环境包到conda目录
tar -xzf py312_env.tar.gz -C /root/miniconda3/envs
# 激活环境
conda activate py312
3. 离线安装依赖
pip install --no-index --find-links=./offline_packages -r requirements.txt
4. 验证环境
python -c "import sys; print(sys.platform, sys.version)"
# 应输出:linux 3.12.1 (...)
注意事项
- 架构一致性:
- 所有操作需在ARM架构(aarch64)机器上执行
- 确保联网机和离线机架构相同
- 平台标识说明:
manylinux2014_aarch64
:ARM架构标准平台标签- 勿使用x86_64标识(会导致兼容性问题)
- 权限管理:
- 建议使用root权限操作,避免权限问题
- 环境默认安装在
/root/miniconda3
- 版本匹配:
- Python版本需与下载时指定的版本严格一致
- 确保requirements.txt包含完整依赖
ARM架构离线Python环境部署的更多相关文章
- 1-编程基础及Python环境部署
目录 1 编程基础 1.1 基本概念 1.2 语言分类 1.3 高级语言的发展 2 程序 3 python的语言介绍 4 Python的解释器 5 Python版本区别 6 Python安装 6.1 ...
- Arm架构下VUE环境的安装
最近因为项目需要在arm环境下搭建vue环境,网上有基于Linux的 教程,路径略有不同,现整理如下 1.安装文件下载 1.下载地址:http://nodejs.cn/download/ 2.选择一个 ...
- 在doker上的python安装及环境部署
python环境部署 我们今天学习的内容是如何将Django项目部署到linux服务器上,我们部署的linux系统是centos7首先,我们先在linux上搭建我们的Python3环境: 在这里首先强 ...
- ARM架构下的Docker环境,OpenJDK官方没有8版本镜像,如何完美解决?
为什么需要ARM架构下的OpenJDK8的Docker镜像? 对现有的Java应用,之前一直运行在x86处理器环境下,编译和运行都是JDK8,如今在树莓派的Docker环境运行(或者其他ARM架构电脑 ...
- 白手起家Django项目发布中篇_Centos下Python2和3并存环境部署
python环境部署 我们今天学习的内容是如何将Django项目部署到linux服务器上,我们部署的linux系统是centos7首先,我们先在linux上搭建我们的Python3环境: 在这里首先强 ...
- 离线环境下自动化部署python环境(含openssl)
遇到有项目要在内网环境下安装python项目,所以空余时写了自动化部署python环境和python项目的脚本,由于项目涉密,这里仅提供自动化部署python环境的shell脚本,包括openssl的 ...
- 微服务架构 - 离线部署k8s平台并部署测试实例
一般在公司部署或者真实环境部署k8s平台,很有可能是内网环境,也即意味着是无法连接互联网的环境,这时就需要离线部署k8s平台.在此整理离线部署k8s的步骤,分享给大家,有什么不足之处,欢迎指正. 1. ...
- CentOS 5系统安装Django、Apache 、mod_wsgi部署Python环境教程
Django,是一款针对Python环境的WEB开发框架,能够帮助我们构架快捷.简单的WEB框架设置,Django框架非常适合开发内容应用环境,所以在本文中,麦子将整理基于Centos系统部署安装Dj ...
- Python简介及环境部署
Python的由来: Python的创始人:Guido van Rossum Guido 在1989年12月时,寻找一门“课余”编程项目来打发圣诞节前后的时间.Guido决定为当时正构 ...
- 西秦的ACE-Python教程 一、Python本地开发环境部署
西秦的ACE-Python教程 一.Python本地开发环境部署 西秦 级别: 论坛版主 发帖 1357 云币 2782 加关注 写私信 只看楼主 更多操作楼主 发表于: 10-10 ...
随机推荐
- java Stream之Optional API
摘要:介绍Stream的容器类中 Optional 方法. 综述 仰慕 Stream 流久矣,终于有机会彻底的了解其特性以及用法了,关于源码的理解还需要持续增加深度.在学习 Stream 的时候, ...
- SpringBoot的启动流程扩展点
阅读说明:1.如果有排版格式问题,请移步https://www.yuque.com/mrhuang-ire4d/oufb8x/yo5ywqt5eudxvxfc?singleDoc#%20%E3%80% ...
- 线程池中execute和submit的区别?
简要回答 execute只能提交Runnable类型的任务,无返回值.submit既可以提交Runnable类型的任务,也可以提交Callable类型的任务,会有一个类型为Future的返回值,但当任 ...
- Hi,我是ChunJun,一个有趣好用的开源项目
Hi,我是ChunJun,一个有趣好用的开源项目. 今天我们正式开通了自己的公众号!欢迎大家关注~ 数字经济时代,各行各业数字化转型大趋势下,数据要素成为关键.海量多源异构数据汇聚,使得数据同步面临同 ...
- ABC295(D~G)
Tasks - AtCoder Beginner Contest 295 这篇是超级抽象的简要tj,看不懂不要骂我这个蒟蒻QWQ D - Three Days Ago (atcoder.jp) \(f ...
- 十、buildroot系统 桌面配置
4.4.桌面控制 4.4.1.weston 文件夹路径 /common/overlays/10-weston 1.核心设置 配置 Weston 的核心设置 文件 /etc/xdg/weston/wes ...
- Blazor学习之旅(6)路由系统
大家好,我是Edison. Blazor 的路由系统就和 ASP.NET MVC的路由系统一样,可以为我们提供灵活的选项,可用于确保用户请求到达可处理它们并返回用户想要的信息的组件. 本篇,我们来了解 ...
- Luogu P8479 「GLR-R3」谷雨
题传 upd on 2023.10.03 补充了代码以及一些实现细节. 自己写的关于这类剖分方法的 \(blog\) 题意简述 称一条链和与其有连边的点 构成的点集 为 "毛毛虫" ...
- vivo Pulsar 万亿级消息处理实践(3)-KoP指标异常修复
作者:vivo 互联网大数据团队- Chen Jianbo 本文是<vivo Pulsar万亿级消息处理实践>系列文章第3篇. Pulsar是Apache基金会的开源分布式流处理平台和消息 ...
- mac快速安装git
前提 每次安装git,都需要安装xcode,我不需要xcode 而且这厮还极其的大,下载慢. 找到一个办法[如果你不需要 Xcode,只安装 Xcode Command Line Tools 就可以了 ...