在无网centos中简易部署python环境

1 准备阶段

为了模拟真实的环境,我用docker从官方仓库pull下来了一个centos系统,然后安装了python3.6.0。

1.1 创建容器

  1. 利用docker images查看所有的镜像;
  2. 根据镜像的名字,如centos,创建容器,注意容器要有交互的shell,因此命令为:docker run -it centos '/bin/bash'
  3. 利用docker ps -a查看所有的容器,利用docker rename <container-id> test将容器重命名为test;
  4. 可以从本地传输文件到容器中;
  5. 利用docker start -i test启动容器。

1.2 安装python

虽然介绍的是在断网情况下安装python,但是系统中仍然需要一些必须的命令,总结了一下,包括:gccmakezlib*。一般这些命令服务器都会预装,如果实在没有,那就只能网络上下好考进去手动安装了,这不是本文的重点,因此,针对此类问题以下给出的都是有网条件下的解决方案。

解压从官网下载的压缩包,进入解压后的文件夹:

  1. 指定python3的安装位置(注意:文件夹必须事先创建;系统必须要有GCC环境,如果没有,运行yum install gcc进行安装),运行以下命令:
    ./configure --prefix=/usr/path/to/python3
    
  2. 然后运行make && make install(没有make命令就用yum install make安装;提示缺少zlib的解压缩类库,运行yum install zlib*安装即可)。
  3. 第三步,创建一个软链接,目的是从任何位置都可以启动python3(需要注意的是,linux系统的正常运行需要python2,因此不能把系统自带的python2删除,为区分两者,将新装的python指定为python3),运行以下命令:
    ln -s /usr/path/to/python3/bin/python3 /usr/bin/python3
    
  4. 【这一步还不确定需不需要,执行上述三步后就可以用python3打开python3的控制台了】最后一步,修改~/.bashrc文件,在最后添加如下代码:
    PATH=$PATH:$HOME/bin:/path/to/python3/bin
    export PATH
    
    保存退出,然后source ~/.bashrc使之生效。

这时,输入python3就会进入python3.6.0的环境。

2 实施阶段

2.1 创建虚拟环境

为了各项目的独立,需要创建虚拟环境。命令如下:

python3 -m venv /path/to/new/virtual/environment

激活虚拟环境:

source /path/to/new/virtual/environment/bin/activate

关闭虚拟环境:

deactivate

2.2 安装依赖包

  1. 在虚拟环境开启的情况下,利用pip install <pkgs>安装项目所需的依赖包;
  2. 执行pip freeze > requirements.txt将包的信息写入requirements.txt文件中;

2.3 迁移至无网状态下安装依赖包

  1. 利用pip download --destination-directory DIR -r requirements.txt将所需依赖包下载至DIR目录下;
  2. requirements.txtDIR都利用docker cp命令导出,然后复制到目标服务器上,注意目标服务器的python版本需要与容器中的版本一致;
  3. 执行pip install --no-index --find-links=DIR -r requirements.txt,即可实现从本地安装依赖环境。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芳樽里的歌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值