部署python django程序
在一台新的服务器上x需要先安装python3 ,git , 等
安装python3
安装python3 之前博客写过
创建虚拟环境,我用的是venv
https://docs.python.org/3/library/venv.html
首先创建一个空目录
python3 -m venv DIR
在linux 启动虚拟环境是
source bin/activate
pip3安装各种Python包
pip3 install -r requirements.txt
note: requirements.txt 这个文件名不一定非是这个,只要内容符合要求就行
关于生成这个文件 的命令是
pip freeze > FILENAME.txt
退出虚拟环境
deactivate
linux安装mysql
参考
http://www.runoob.com/mysql/mysql-install.html
yum install -y mysql
yum install -y mysql-server
yum install -y devel
启动
service mysqld start 部署nginx 和uwsgi 安装uwsgi
pip3 install uwsgi 安装nginx
yum install nginx
在执行这个命令后发现错误信息, no valid packages nginx
red hat/centos 发行版下,看过望山各种答案还是找不到
故记录一下
求助于nginx 官网 https://nginx.org/en/linux_packages.html#stable 按照官网的命令,
先创建一个文件
vim /etc/yum.repos.d/nginx.repo
uwsgi 链接 https://uwsgi-docs.readthedocs.io/en/latest/WSGIquickstart.html
To set up the yum repository for RHEL/CentOS, create the file named/etc/yum.repos.d/nginx.repo
with the following contents:
在这个文件下写入
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/
gpgcheck=
enabled=
标红部分要根据你的操作系统版本来改
Replace “OS
” with “rhel
” or “centos
”, depending on the distribution used,
and “OSRELEASE
” with “6
” or “7
”, for 6.x or 7.x versions, respectively.
翻译是:
将用rhel 或者centos 来替代'OS' ,这个取决于你的发行版,用6或者7来替代 “OSRELEASE
”
这个取决于是6.x 还是7.x
改完之后保存退出
再执行命令
yum install nginx
就大功告成了
Currently, nginx packages are available for the following distributions and versions:
关于版本,可通过uname命令来看
如
[root@host yuyang]# uname -r
4.13.-.el6.elrepo.i686
[root@host yuyang]# uname -v
# SMP Sat Oct :: EDT
[root@host yuyang]# uname -i
i386
RHEL/CentOS:
Version Supported Platforms 6.x x86_64, i386 7.4+ x86_64, ppc64le
Debian:
Version Codename Supported Platforms 8.x jessie x86_64, i386 9.x stretch x86_64, i386
Ubuntu:
Version Codename Supported Platforms 14.04 trusty x86_64, i386, aarch64/arm64 16.04 xenial x86_64, i386, ppc64el, aarch64/arm64 17.04 zesty x86_64, i386
SLES:
Version | Supported Platforms |
12 | x86_64 |
关于部署django几点注意点:
settings.py ALLOWED_HOST 需要设置 * 或者对应ip
DEBUG 改成False
settings 设置STATIC_ROOT
在启动uwsgi前,收集静态文件,命令是python manage.py collectstatic ,这个命令回见django里面的静态文件全收集到STATIC_ROOT 所指定的目录下 之前一晚上failed to open python.py 这个bug 是因为 --chdir --wsgi-file 的文件路径写的不对,写重复了。 启动有mysql 的django 项目,报 nomudule package MySQLdb 需要
pip3 install mysqlclient
在deug设置为false 后静态文件是从STATIC_ROOT 下面找的
uwsgi --http : --chdir /root/s5/deploy1 --wsgi-file deploy1/wsgi.py --master --processes --threads --static-map /static=/root/s5/xxxxxx
也可以写成配置文件
部署python django程序的更多相关文章
- Linux部署python django程序-apache
1.安装Apache 先卸载自带的httpd rpm -e httpd --nodeps 在网上下载四个文件 1.apr-1.4.6.tar.gz 2.apr-util-1.5.1.tar.gz 3. ...
- Docker部署Python应用程序
Docker部署Python应用程序 1. 单个py文件部署 生成Dockerfile 文件 插件用的豆瓣的镜像,,重置时间(容器的默认时间是UTC时间与宿主机的相差8小时). 文中需要三个插件(pe ...
- 使用Nginx+uwsgi在亚马逊云服务器上部署python+django项目完整版(二)——部署配置及相关知识
---恢复内容开始--- 一.前提: 1.django项目文件已放置在云服务器上,配置好运行环境,可正常运行 2.云服务器可正常连接 二.相关知识 1.python manage.py runserv ...
- 使用Visual Studio 2017开发python,并在iis上部署Python Django
作为宇宙第一IDE,怎么可以不支持python开发呢? 1.Visual Studio Installer 扩展Python开发 开始菜单中打开Visual Studio Installer,点修改. ...
- IIS 部署 Python Django网站流程(受够了野路子)
知道的,百度上搜出来的东西质量令人唏嘘.当你求助的时候多半还得靠自己,或者靠Google 介入正题,详细来一遍流程吧 当然,我是用Visual Studio 2019 来编辑开发Django项目的,如 ...
- Linux下开发python django程序(设置admin后台管理上传文件和前台上传文件保存数据库)
1.项目创建相关工作参考前面 2.在models.py文件中定义数据库结构 import django.db import modelsclass RegisterUser(models.Model) ...
- Linux下开发python django程序(设置admin后台管理模块)
1.新建项目和项目下APP django-admin startproject csvt03 django-admin startapp app1 2.修改settings.py文件 设置默认安装AP ...
- Linux下开发python django程序
一.安装django 1.#进入包文件夹下执行解压 tar zxvf Django-1.3.7.tar.gz 2#进入解压的文件夹执行安装 python setup.py install 3#安装成功 ...
- 最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器
每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP ...
随机推荐
- Linux内核设计期中总结
Linux内核设计期中总结 ● 知识点 一.计算机是如何工作的 计算机是按照冯·诺依曼存储程序的原理. 在执行程序时须先将要执行的相关程序和数据放入内存储器中,在执行程序时CPU根据当前程序指针寄存器 ...
- C# 中颜色和名称样式对照表
WPF中的画刷也一样适用 System.Windows.Media.Brushes.名称 (如:System.Windows.Media.Brushes.AliceBlue) :first-child ...
- Maven的课堂笔记1
1 什么是maven? Maven是一个跨平台的项目管理工具,主要用于基于java平台的项目构建,依赖管理. Clean compile test package install run ...
- ASP.NET MVC与WebForm对比
MVC优点:1.分离更彻底,分层清晰,易于维护和扩展.2.验证更加方便快捷.3.无ViewState,页面更加干净4.路由更容易定义url,对SEO比较好.5.强类型VIEW实现,更安全高效. Web ...
- App WebView实例化
a,高级设置里的环境变量 jdk的配置 b,下载Google的sdk,里面直接包含eclipse 1,新建一个项目 2,起个名字 3,设么走不做,next 4,只操作选择显示的三种方式 5,next什 ...
- Node 多页面请求
//功能:创建web服务器接收客户请求// http://127.0.0.1:8080/index 准备// http://127.0.0.1:8080/news 准备// public/index. ...
- zabbix2.2 - /tmp/FromDualMySQLagent.lock already exists
最近升级了线上的zabbix server版本,升级成功后发现日志中一直报出history和history-uint表的主键冲突数据插入不成功的信息,根据主键冲突发生的itemid去库里查,如下 my ...
- Bootstrap手风琴效果
前面的话 Bootstrap 框架中 Collapse插件(折叠)其实就是我们常见的手风琴效果.当单击一个触发元素时,在另外一个可折叠区域进行显示或隐藏,再次单击时可以反转显示状态.经典的场景是多个折 ...
- QueryParser 是对一段话进行分词的 用于收集客户端发来的
- c++ 可变参数模板
可变参数模板,自己尝试了个例子,如下: // variadicTemplates.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #incl ...