淘先锋技术网

首页 1 2 3 4 5 6 7

linux下python3的编译安装以及项目运行

普通版安装编译python3并运行项目

最好指定目录进行操作

1.解决系统的基础开发工具,防止python3编译过程出错

yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

2.获取python3的源代码,去官网下载即可

先cd 到opt下

wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz

3.解压缩源代码包,进入源码包

xz -d Python-3.6.7.tar.xz #去掉.xz压缩后缀

tar -zxvf Python-3.6.7.tar #解压缩 tar xvJf Python-3.6.7.tgz

cd Python-3.6.7

4.编译三部曲,几乎所有的linux软件,编译安装都是这个步骤,nginx,redis都是这样

第一曲:指定安装路径

执行configure脚本文件 ,指定软件的安装路径

./configure --prefix=/opt/python367/

第二曲:编译源代码

指定make指令 ,针对当前文件夹下的makefile开始读取

输入 make 即可

第三曲:开始安装

这一步才是生成解释器的步骤

make install

5.配置PATH环境变量,让命令可以快捷执行

取出当前PATH的值

注意!!!!!PATH的值是自上而下,从前往后的读取顺序,这里要和虚拟环境配置有关了

echo $PATH

把python3的路径,放到最前面,因为虚拟环境的创建的时候,可能会有坑,

PATH的加载顺序是自上而下的

[root@linux bin]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

修改PATH的值,永久修改,写入到/etc/profile ,每次用户登录都加载这个文件,因此变量永久生效

vim /etc/profile 在最底行,写入如下信息

PATH="/opt/python367/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"

#PATH的组成部分:1. 第一个冒号前:安装的python3下的bin目录 2.第二个冒号后:echo $PATH的执行结果

读取/etc/profile #让他永久生效

命令: source /etc/profile #用source命令,去读这个文件 内容,让变量生效

6.上传crm代码到linux

xftp6软件直接上传到linux服务器

或可以用xftp或者压缩文件后,用lrzsz

7.解决crm运行的模块依赖

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple django==1.11.23

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple pymysql

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple django-multiselectfield

......

8.安装mariadb

rpm手动安装,很恶心,解决以来关系

源代码编译安装(指定安装路径,可以自由选择最新的软件版本,可以扩展第三方高级的功能)

yum安装方便,自动解决依赖(安装路径默认,软件仓库版本可能过低)

yum install mariadb-server mariadb -y

通过yum安装的软件,都可以通过systemctl 去管理

systemctl start mariadb #启动mariadb

systemctl stop mariadb #关闭mariadb

systemctl restart mariadb #重启mariadb

9.导出windows的crm数据,传递给linux进行导入

1.先进入cmd

2.输入mysql

3.执行 show variables like "%char%"; #character_sets_dir D:\Program Files\feiq\mysql\mysql-5.6.45-winx64\mysql-5.6.45-winx64\share\charsets\ 这就是mysql安装路径

4.先找到mysql的安装路径,进入mysql下的bin目录,bin目录下打开cmd,执行下面命令

5.mysqldump -u root -p crm > crm.sql #指定数据库导出的命令

10。传输ignb.sql文件到linux后,进行数据导入

1.数据库导入

方式1: 命令形式导入

得先创建好数据库

1.systemctl start mariadb #启动mariadb,可能用,

2.mysql #进入mysql

3.create database crm; #建库

4.指定数据库导入数据

mysql -uroot -p crm < crm.sql

方式2:交互式终端的导入数据

create database ignb;

use ignb ;

source /opt/ignb.sql ;

#方式一不行用方式二,能用哪个用哪个

2.数据库配置

1.进入项目的settings.py

2.执行 vim settings.py

3.ALLOWED_HOSTS = ['*'] # * 代表 允许所有主机访问,可以设置一些地址进行限制

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'crm', #在之前创建的数据库名字不要错

'PORT':3306,

'HOST':'0.0.0.0', #改成这个,正常运行数据库的服务器地址

'USER':'root',

'PASSWORD':'' # 密码可以设置为空,也可以设置一个密码

}

}

11.启动crm项目

#启动前关闭防火墙

1:查看防火状态

systemctl status firewalld

service iptables status

2:暂时关闭防火墙

systemctl stop firewalld

service iptables stop

3:永久关闭防火墙

systemctl disable firewalld

chkconfig iptables off

4:重启防火墙

systemctl enable firewalld

service iptables restart

python3 manage.py runserver 0.0.0.0:8000

# 可能或报下面数据库方面的错

You have 14 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run 'python manage.py migrate' to apply them.

解决:执行 python3 manage.py migrate

虚拟环境下安装编译python3并运行项目

python的虚拟环境其实就是多个python解释器而已,不会影响操作系统

# linux虚拟环境启动代码发布

1.用virtualenvwrapper工具分别启动两个python项目

1.得先编译安装python3

https://www.cnblogs.com/pyyu/p/7402145.html #可以参考博客

2.安装编译所需的开发环境

yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

3.下载python3的源代码

wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz

4.对源代码解压缩

[root@root_linux ]# tar -zxvf Python-3.6.7.tgz

或者tar xvJf Python-3.6.7.tgz

5.切换进入源码

cd Python-3.6.7

6.开始编译三部曲了

第一曲:指定软件安装位置

# 新建了mypro文件

[root@root_linux Python-3.6.7]

# ./configure --prefix=/opt/python367/

第二曲:开始编译

make

第三曲:编译安装,生成最终的可以使用的python3.6.7的解释器

make install

7.配置PATH环境变量,可以直接输入python3就进入/mypro/python367/bin/python3

向要永久生效,配置环境变量,编辑/etc/profile 文件,开机就会读取这个文件中的所有变量定义

vim /etc/profile

写入PATH变量的值修改

PATH="/opt/python367/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"

8.退出回话,重新登录linux,即可加载新的PATH

9.安装virtualenvwrapper工具

pip3 install -i https://pypi.douban.com/simple virtualenvwrapper

10.升级pip3版本命令

pip3 install --upgrade pip

11.配置环境变量,加载虚拟环境工具

vim /etc/profile

WORKON_HOME=~/Envs #设置virtualenv的统一管理目录

VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' #添加virtualenvwrapper的参数,生成干净隔绝的环境

VIRTUALENVWRAPPER_PYTHON=/opt/python367/bin/python3 #指定python解释器

source /opt/python367/bin/virtualenvwrapper.sh #执行virtualenvwrapper安装脚本

12.重新登录后,生效配置

exit

13.使用虚拟环境命令,创建新的虚拟环境用于运行项目

[root@root_linux ~]# mkvirtualenv mypro666

[root@root_linux ~]# mkvirtualenv mypro888

14.可以用workon命令切换不同的虚拟环境

15.上传本地开发好的代码,到linux服务器上,安装lrzsz传输工具,用于windows和linux传递文件

yum install lrzsz -y

16.压缩windows环境开发的代码,传递至服务器

rz #直接输入此命令,接受windows的代码

16.安装项目运行所需的所有模块

1.导出windows的模块

pip3 freeze > requirements.txt

2.在linux 上安装此文件,自动读取文件中所有的模块版本信息

pip3 install -r requirements.txt

3.也可以用土方法,解决环境依赖问题

可以用python3 manage.py runserver 0.0.0.0:9000,调试代码,看需要哪些模块,如果报错哪个模块没有就下载哪个模块

pip3 install -i https://pypi.douban.com/simple django==1.11.23

pip3 install -i https://pypi.douban.com/simple pymysql

pip3 install -i https://pypi.douban.com/simple django-multiselectfield

17.解决数据库问题,启动数据库

yum install mariadb-server mariadb -y #安装数据库

systemctl start mariadb #启动数据库

18.检查mysql是否启动

查进程:ps -ef |grep mysql

查端口:

(mypro888) [root@root_linux IGnb]# netstat -tunlp |grep 3306

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 27687/mysqld

查看mariadb数据库的服务状态:systemctl status mariadb

19.尝试再次启动项目,是否正常

可能还会遇见密码不一致的问题,需要修改settings.py

linux的ip地址:192.168.16.85 127.0.0.1 0.0.0.0(绑定这台机器所有的ip地址)

存在多个网卡

windows的ip地址:192.168.16.64 127.0.0.1 0.0.0.0

20.修改django的配置文件settings.py修改 ALLOW_HOSTS=['*']

21.启动django程序

python3 manage.py runserver 0.0.0.0:8000

22.运行bighg项目,上传bighg代码到linux服务器,解决项目运行所需的依赖

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple django==1.11.23

python3 manage.py runserver

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple channels

python3 manage.py runserver

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple gitpython

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple paramiko

23.在linux上安装git

yum install git -y

24.再次运行项目,代码发布启动

python3 manage.py runserver 0.0.0.0:9000

make && make install #前面正确执行了,没报错,后面正常执行

make || make install #前面执行失败了,才会执行后面的