zoukankan      html  css  js  c++  java
  • 部署Python应用

    安装Python 3.7.5

    CentOS默认安装的是2.7.5版本的python

    [root@iZuf6e3zah39uzoj5pg1myZ ~]# python -V
    Python 2.7.5
    
    • 更新成阿里云yum源

      cd /etc/yum.repos.d
      
      wget http://mirrors.aliyun.com/repo/Centos-7.repo下载阿里云的资源文件
      
      mv CentOS-Base.repo CentOS-Base.repo.bak 修改原有的源备份
      
      mv Centos-7.repo CentOS-Base.repo 把下载的文件重命名
      
      yum clean all
      
      yum makecache
      
      yum update
      
    • 安装一些依赖(不安装有几率报错)

      yum -y install zlib-devel bzip2-devel openssl-devel openssl-static ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel lzma gcc
      
      yum -y groupinstall "Development tools"
      
    • 下载包

      wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
      
    • 解压

      tar -zvxf Python-3.8.5.tgz
      
      cd Python-3.8.5
      
    • 安装到指定目录

      ./configure --prefix=/usr/local/sbin/python-3.8.5
      
      make && make install
      
      Looking in links: /tmp/tmpf2s9baqm
      Processing /tmp/tmpf2s9baqm/setuptools-47.1.0-py3-none-any.whl
      Processing /tmp/tmpf2s9baqm/pip-20.1.1-py2.py3-none-any.whl
      Installing collected packages: setuptools, pip
      //需要配置python和pip的软链接
        WARNING: The script easy_install-3.8 is installed in '/usr/local/sbin/python-3.8.5/bin' which is not on PATH.
        Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
        WARNING: The scripts pip3 and pip3.8 are installed in '/usr/local/sbin/python-3.8.5/bin' which is not on PATH.
        Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
      Successfully installed pip-20.1.1 setuptools-47.1.0
      
      
    • 修改软链接

      [root@iZuf6e3zah39uzoj5pg1myZ bin]# which python
      /usr/bin/python
      
      rm -rf /usr/bin/python
      
      [root@iZuf6e3zah39uzoj5pg1myZ ~]# ln -sv /usr/local/sbin/python-3.8.5/bin/python3.8 /usr/bin/python
      ‘/usr/bin/python’ -> ‘/usr/local/sbin/python-3.8.5/bin/python3.8’
      
      [root@iZuf6e3zah39uzoj5pg1myZ ~]# python -V
      Python 3.8.5
      
      [root@iZuf6e3zah39uzoj5pg1myZ ~]# which pip
      /usr/bin/pip
      
      [root@iZuf6e3zah39uzoj5pg1myZ bin]# ln -s /usr/local/sbin/python-3.8.5/bin/pip3.8 /usr/bin/pip
      ln: failed to create symbolic link ‘/usr/bin/pip’: File exists
      [root@iZuf6e3zah39uzoj5pg1myZ bin]# rm -rf /usr/bin/pip
      [root@iZuf6e3zah39uzoj5pg1myZ bin]# ln -s /usr/local/sbin/python-3.8.5/bin/pip3.8 /usr/bin/pip
      [root@iZuf6e3zah39uzoj5pg1myZ bin]# pip -V
      pip 20.1.1 from /usr/local/sbin/python-3.8.5/lib/python3.8/site-packages/pip (python 3.8)
      
    • 安装完python导致yum命令无法执行的问题

      vi /usr/bin/yum
      
      把#! /usr/bin/python修改为#! /usr/bin/python2
      
      vi /usr/libexec/urlgrabber-ext-down
      
      #! /usr/bin/python 也要修改为#! /usr/bin/python2
      

    部署文件

    • 关于依赖安装的问题,使用批量安装的方式生成依赖清单,多了很多奇奇怪怪的东西,就直接手动使用pip安装了

    • 另外,linux系统无法识别模块的问题通过:

      # Linux下无法识别模块
      import sys
      sys.path.append("/root/BlackFish")
      
      代码结构:
      BlackFish
      -blackfish
        -common
          Blog.py
        -itplatform
          Cnbloggs.py
          Csdn.py
        main.py  
      
    • 运行main.py

      nohup python -u main.py &
      
      -u:不通过缓存,直接打印(没有延迟)
      
  • 相关阅读:
    分布式文件系统HDFS体系
    开源分布式文件系统比较
    分布式文件系统FastDFS设计原理
    开源日志系统比较
    FMX.Controls单元 中图形矩阵变换
    磁波刀和海扶刀的区别
    pchar,pwidechar,pansichar作为返回参数时内存访问错误
    【笔记】每次开机后,第一次打开一个程序,比如浏览器或播放器,会比较慢。但关掉后第二次或第三次打开的话就会比较快了,这是为什么?
    DOS批处理中%cd%和%~dp0的异同分析
    [转]使用互斥对象让程序只运行一次(delphi)
  • 原文地址:https://www.cnblogs.com/noneplus/p/13420120.html
Copyright © 2011-2022 走看看