如何离线安装所有依赖包
当我们在一个没有公网的环境下去部署一些东西的时候往往是让人很头疼的一件事,因为可能会需要各种依赖包,依赖包本身也还有很多依赖关系。如果没有一次性把全部的依赖包打包下载好,我们下载的过程就能体会到什么叫俄罗斯套娃。。
一、os依赖包
1、准备一台与生产部署环境内核版本基本一致的镜像,安装mini install版作为本地环境
# cat /proc/version Linux version 3.10.0-693.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Aug 22 21:09:27 UTC 2017
2、配置好本地环境的yum源、保证可通公网,一般都可以配置阿里的yum源即可
# cd /etc/yum.repos.d/ # mkdir bak # mv ./*repo bak # curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # yum clean all # yum makecache
3、通过yum将所需要的依赖包全部下载至本地目录
# yum install --downloadonly --downloaddir= <target_dir> <package-name>
备注:为保证生产部署环境可以部署自己的本地yum源,我们需要额外的去下载好 createrepo
# yum install --downloadonly --downloaddir=/myrpm createrepo
4、打包以上所有需要的依赖包到生产部署环境,搭建本地yum源
1)通过rpm手动安装createrepo
根据提示安装所需依赖包即可 # rpm -ihv createrepo-0.9.9-28.el7.noarch.rpm
2)搭建本地yum源
#创建本地rpm包repodata的索引目录 # createrepo /myrpm/ Spawning worker 0 with 197 pkgs Spawning worker 1 with 197 pkgs Workers Finished Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete #若后续有更新其他依赖包,不需要重建,只需要update一下索引目录就好 # createrepo --update /myrpm/ Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete #配置yum源配置文件 # cd /etc/yum.repos.d/ # mkdir bak # mv ./*repo bak # cat local_yum.repo [local_yum] name=local_yum baseurl=file:///myrpm gpgcheck=0 enabled=1 priority=1 #清除yum缓存 yum clean all
5、通过本地yum源部署安装
yum install <package-name>
二、python库安装
1、下载python依赖包要关注两者环境的python、pip版本一致
# /app/python/bin/virtualenv /clean_env New python executable in /clean_env/bin/python2.7 Not overwriting existing python script /clean_env/bin/python (you must use /clean_env/bin/python2.7) Installing setuptools, pip, wheel...done. # source /clean_env/bin/activate (clean_env) # python --version Python 2.7.9 (clean_env) # pip --version pip 20.2b1 from /clean_env/lib/python2.7/site-packages/pip (python 2.7)
2、本地环境下载所需要的库及其依赖包
#requirements.txt文件下是我们需要安装的所有库 (clean_env) # pip download -d <target-dir> --trusted-host mirrors.aliyun.com -r requirements.txt or (clean_env) # pip download -d <target-dir> --trusted-host mirrors.aliyun.com <package-name>
3、将所有python包打包上传至生产部署环境
4、生产环境指定package目录安装库
# pip install --no-index --find-links=/root/python20/opsinsight/ -r requirements.txt or # pip install --no-index --find-links=/root/python20/opsinsight/ <package-name>
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
大数据中台之Kafka,到底好在哪里?
今天给大家分享一个大数据里面很火的技术——Kafka,Kafka 是一个分布式的消息系统,其高性能在圈内很出名。本人阅读过多个大数据生态的开源技术的源码,个人感觉 Kafka 的源码质量是比较高的一个,如果有同学感兴趣的话,可以拿来阅读一下。网上也有不少的文章分析 Kafka 的性能为什么那么好,但是我感觉很多文章都没说到点上,所以今天借着这个机会跟大家交流一下 kafka 的性能为什么那么好? 优秀设计之基于NIO编程 Kafka 底层的 IO 用的是 NIO,这个事虽然简单,但是也需要提一提。我们开发一个分布式文件系统的时候避免不了需要思考需要什么样的 IO?BIO 性能较差,NIO 性能要比 BIO 要好很多,而且编程难度也不算大,当然性能最好的那就是 AIO 了,但是 AIO 编程难度较大,代码设计起来较为复杂,所以 Kafka 选择的是 NIO,也是因为这些原因,目前我们看到很多开源的技术也都是用的 NIO。 优秀设计之高性能网络设计 个人认为 Kafka 的网络部分的代码设计是整个 Kafka 比较精华的部分。我们接下来一步一步分析一下 Kafka Server 端为了支持...
- 下一篇
wind-core 3.8.0-RELEASE 发布,支持 Redis 查询缓存
wind-core 3.8.0 正式版发布: 添加:查询缓存支持(redis) 添加:自定义查询结果转换器 添加:自定义枚举序列化 修复:Feign调用时,枚举反序列化异常
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,CentOS7官方镜像安装Oracle11G
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker安装Oracle12C,快速搭建Oracle学习环境