部署一个基于python语言的web发布环境

摘要:
---恢复内容开始了——1)面向对象的语言2)丰富的库3)可移植性4)免费和开源5)易于学习和执行的软件开发、人工智能,web开发和其他部署过程:Cnetos7.5+Nginx+python+Django+uwsgi+mysql实验部署过程1)安装Nginx2)安装python3)安装mysql4)部署和发布平台5)测试1。Nginx2和mysql以前已经安装过_ Install是瑞典AB开发的一个关系数据库,后来卖给了Oracle。它分为商业版和社区版。目前,有大量的mysql5和mysql8版本。建议您首先使用最新版本的5.7。

---恢复内容开始---

部署一个基于python语言的web发布环境第1张

1) 一门面向对象的语言
2)拥有丰富的库
3)可移植性
4)免费、开源
5)简单易易学
可做软件开发、人工智能、web开发等等

部署流程:

Cnetos7.5+Nginx+python+Django+uwsgi+mysql
实验部署流程
1)安装Nginx
2)安装python
3)安装mysql
4)部署发布平台
5)测试

1、前面已经安装了Nginx

2、mysql_install(中小型公司)

⼀一个关系型数据库,由瑞典的AB公司开发,后来卖给了了oracle公司,⽬目前分为商业版和社区版
⽬目前有量量⼤大版本 mysql5 和 mysql8
⽬目前建议⼤大家先使⽤用5.7最新版本即可。官⽅方提供了了RPM和源码两种格式
1)安装依赖包
2) 升级cmake⼯工具
3) 升级boost库⽂文件
4) 安装mysql
5) 启动测试
部署一个基于python语言的web发布环境第2张View Code

先安装依赖

打开终端:

yum -y install ncurses-devel gcc-* bzip2-*

安装cmake

到官网安装:
 wget https://github.com/Kitware/CMake/releases/download/v3.13.3/cmake-3.13.3.tar.gz

wget https://cmake.org/files/v3.13/cmake-3.6.0-rc1.tar.gz

删除:rm -f  文件名

rm -rf   /var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹

下载boost

https://www.boost.org/users/history/version_1_69_0.html

http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.bz2

wget https://dl.bintray.com/boostorg/release/1.59.0/source/boost_1_59_0.tar.bz2

下载mysql

本次选择源码安装:

部署一个基于python语言的web发布环境第3张

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24.tar.gz

部署一个基于python语言的web发布环境第4张

 部署一个基于python语言的web发布环境第5张

boot_1_59---->对应mysql-5.7.24.tar.gz

接下来解压安装包

tar xf cmake-3.13.3.tar.gz

cd cmake-3.13.3


编译:./configure
make -j4

部署一个基于python语言的web发布环境第6张

 sudo make install

 检查是否安装成功:

部署一个基于python语言的web发布环境第7张

接下来解压boost

 sudo mv boost_1_59_0 /usr/local/

sudo tar xf boost_1_59_0.tar.bz2

拷贝到另外一个目录下: mv boost_1_59_0 /usr/local/boost

解压mysql

tar xf mysql-5.7.24.tar.gz
cd mysql-5.7.24

---cmake就是配置

首先安装:

useradd -s /sbin/nologin -r mysql
mkdir -pv /usr/local/mysql/data

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/lib/mysql -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=all  -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost

 -------------------------------------- cmake  1.27 卡在这里

 部署一个基于python语言的web发布环境第8张

mkdir: 无法创建目录 “/usr/local/lib/***”: 权限不够

mkdir: 无法创建目录 “/usr/local/lib/***”: 权限不够
make: *** [install] 错误 1

出现类似错误,文件无法删除或者创建

如果你要是用的make && make install的话

你可以sudo make

然后sudo make isntall解决

头文件及库文件拷贝:sudo cp src_dir des_dir

sudo cp -rf  mysql-5.7.24 /usr/local/src

 部署一个基于python语言的web发布环境第9张

修改之后按insert就可以输入:wq!

在src目录下操作:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod 755 /etc/init.d/mysql

cd

ll /usr/local/mysql/

useradd -s/sbin/nologin -r mysql
chown mysql.mysql /usr/local/mysql/ -R
ll /usr/local/mysql/
部署一个基于python语言的web发布环境第10张部署一个基于python语言的web发布环境第11张

ln -sf /usr/local/mysql/bin/* /usr/bin/ ln -sf /usr/local/mysql/lib/* /usr/lib/ ln -sf /usr/local/mysql/libexec/* /usr/local/libexec ln -sf /usr/local/mysql/share/man/man1/* /usr/share/man/man1 ln -sf /usr/local/mysql/share/man/man8/* /usr/share/man/man8 修改配置文件 vim /etc/my.cnf --------------------- datadir=/usr/local/mysql/data basedir=/usr/local/mysql socket=/usr/local/mysql/mysql.sock [mysqld_safe] log-error=/var/log/mysql.log pid-file=/var/run/mysql.pid 保存退出 :wq! 初始化操作: /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 得到初始密码:root@localhost: hrPyuRKT#2ul
部署一个基于python语言的web发布环境第12张


启动数据库:

/etc/init.d/mysql start
部署一个基于python语言的web发布环境第13张
部署一个基于python语言的web发布环境第14张

所有命令加上sudo权限

修改密码:
sudo mysql_secure_installation
部署一个基于python语言的web发布环境第15张
 

解决Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";

 部署一个基于python语言的web发布环境第16张

再次sudo mysql_secure_installation

部署一个基于python语言的web发布环境第17张

部署一个基于python语言的web发布环境第18张

 python部署

下载python

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

解压:

tar xf Python-3.7.1.tar.xz
cd Python-3.7.1

yum -y install gcc-* openssl-* libffidevel sqlite-devel

./configure --enable-optimizations --with-openssl=/usr/bin/openssl

make -j4

make install

遇到的坑:

ModuleNotFoundError: No module named '_ctypes'

解决办法:

sudo yum -y install libffi-devel

部署一个基于python语言的web发布环境第19张

部署一个基于python语言的web发布环境第20张

升级安装包

pip install --upgrade pip

遇到坑:

部署一个基于python语言的web发布环境第21张
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

解决办法:

vim Modules/Setup

部署一个基于python语言的web发布环境第22张

再次更新:

pip install --upgrade pip

部署一个基于python语言的web发布环境第23张

卸载安装的模块:

pip uninstall 模块名

接下来安装虚拟环境,每个项目一个使用的环境和插件都不一样

pip install virtualenv --user

virtualenv 是一个隔绝Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包

创建虚拟环境

virtualenv web
web为创建的虚拟环境
检查是否有web:ls
ls web/
使环境生效:
source web/bin/activate
部署一个基于python语言的web发布环境第24张

 安装django到虚拟环境中

pip install django

在django下新建项目

django-admin.py startproject myweb
cd myweb
启动django:
python manage.py runserver 120.79.2.67:80
部署一个基于python语言的web发布环境第25张

出现错误:

再django配置文件修改访问权限

vim myweb/settings.py

 ctrl+c:退出

部署一个基于python语言的web发布环境第26张

 发布网站

部署一个基于python语言的web发布环境第27张

下载uwsgi

sudo pip install uwsgi
部署一个基于python语言的web发布环境第28张
新建一个目录:
mkdir /etc/uwsgi

把配置文件放缩减目录下 vim
/etc/uwsgi/uwsgi.ini

python3 manage.py runserver 120.79.2.67:80
linux 上传文件 rz命令
安装lrzsz:
# yum -y install lrzsz

免责声明:文章转载自《部署一个基于python语言的web发布环境》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇maven 解决jar包冲突及简单使用goldengate 12c 12.2 新特性(updated)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Web的几种上传方式总结

问题 文件上传在WEB开发中应用很广泛。 文件上传是指将本地图片、视频、音频等文件上传到服务器上,可以供其他用户浏览或下载的过程。 以下总结了常见的文件(图片)上传的方式和要点处理。 表单上传 这是传统的form表单上传,使用form表单的input[type=”file”]控件,可以打开系统的文件选择对话框,从而达到选择文件并上传的目的,它的...

使用动态SQL处理table_name作为输入参数的存储过程(MySQL)

关于mysql如何创建和使用存储过程,参考笔记《MySQL存储过程和函数创建》以及官网:https://dev.mysql.com/doc/refman/5.7/en/create-procedure.html 本篇主要示例使用了输入参数的存储过程,并解决使用表名作为输入参数的问题,因为之前遇到过需要使用表名作为参数的存储过程,很难处理。 问题描述: 假设...

python 绘图---2D、3D散点图、折线图、曲面图

python中绘制2D曲线图需要使用到Matplotlib,Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形,通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。 1. 绘制折线图 plt.plot() 可以用于绘制折线图。...

Python开发利器WingIDE破解方法

“工欲善其事,必先利其器。”刚开始接触Python的人大都用自带的LDLE,尽管它对于初学该语言非常有帮助,但许多开发人员更喜欢其它文本编辑器或集成开发环境。(IDEs)在此我不想展开阐述,Python 社区维护了一份Python 相关编辑器的清单, 涵盖了各种各样支持平台和软件许可协议。但是所给出的编辑器个人认为都不是很理想,一直想找一个类似于php的Z...

基于Python3.7的robotframework环境搭建步骤

一、前言    Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它的使用。 Robot Framework是一个通用的验收测试和验收测试驱动开发(ATDD)的自动化测试框架。它具有易于使用的表格测试数据语法,它采用了关...

Python之Scrapy安装

Scrapy框架是目前Python中最受欢迎的爬虫框架之一,所以今天就来具体了解一下Scrapy框架。 什么是Scrapy框架? Scrapy是一个快速、高层次、轻量级的屏幕抓取和web抓取的python爬虫框架 Scrapy的用途: Scrapy用途非常广泛,主要用于抓取特定web站点的信息并从中提取特定结构的数据,除此之外,还可用于数据挖掘、监测、自动...