ubuntu gevent(ubuntu device for boot loader)

大家好,关于ubuntu gevent很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于ubuntu device for boot loader的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

linux怎么运行django程序(运行django项目的命令)

今天首席CTO笔记来给各位分享关于linux怎么运行django程序的相关内容,其中也会对运行django项目的命令进行详细介绍,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、【踩坑】linux安装配置django环境踩坑记2、linux django uwsgi+nginx怎么调试3、如何在Linux上使用Nginx和Gunicorn托管Django应用4、我有个linux的虚拟主机,我想运行django网站,怎么办?5、linux怎么安装django6、如何在服务器上部署Django项目并使其在后台一直运行【踩坑】linux安装配置django环境踩坑记

linux默认是有python2的,但我又安装了python3,django是在python3的lib里,所以执行django-admin.py startproject learn,调用的python环境是python2的,所以找不到core.management。

阿里云自带的centos的sqlite版本低了

未知

使用 python-m pip代替

未知

从./configure这一步开始重新安装python

可以用命令杀掉这个端口在重启:

vi到具体文件,执行替换命令:

linux django uwsgi+nginx怎么调试

1.python和django的环境搭建

(1)下载anaconda3并安装

wget

sh Anaconda3-2.3.0-Linux-x86_64.sh

一路enter键,然后提示是否加入到环境变量时,输入yes即可。

(2)安装django

直接pip install django

安装成功之后就可以新建项目

django-admin startproject demosite

cd demosite

python manage.py startapp blog

python manage.py migrate(要执行这个命令,让django生成可运行的app,否则后面使用uwsgi会报错)

(3)运行django

python manage.py runserver

curl 127.0.0.1:8000进行如果可以正常访问,就说明django安装成功。

2.安装uwsgi

(1)centOS

yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel

pip install uwsgi

uwsgi--version#查看 uwsgi版本

(2)test.py

然后,Run uWSGI:

uwsgi--http:8000--wsgi-file test.py

def application(env, start_response):

start_response('200 OK', [('Content-Type','text/html')])

return ["Hello World"]# python2

#return [b"Hello World"]# python3

(3)ubuntu可以能会出现错误:

如果出现错误,!!! no internal routing support, rebuild with pcre support!!!

sudo apt-get install libpcre3 libpcre3-dev

sudo pip uninstall uwsgi

sudo apt-get remove uwsgi

sudo pip install uwsgi

(4)测试

1)打开下面url,浏览器上应该显示hello world

curl如果安装httpie模块的话使用http

如果显示正确是Hello World,说明上面的环节是畅通的

2)测试django

默认使用django新建工程会在app下面生成一个wsgi.py的文件

uwsgi--http:8000--wsgi-file wsgi.py直接这样也会报错

uwsgi--http:8000--wsgi-file appname/wsgi.py

打开浏览器输入如果现实正确说明web client--uwsgi--- django是畅通的

3.安装配置nginx

(1)安装

wget

tar xf nginx-1.9.5.tar.gz

cd nginx-1.9.5

./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_gzip_static_module

makemake install

或者参考

(2)配置文件

vi/usr/local/nginx/conf/nginx.conf

一般来说加入个server就OK了

参考配置如下

user root;

worker_processes1;

#error_loglogs/error.log;

#error_loglogs/error.lognotice;

#error_loglogs/error.loginfo;

pidlogs/nginx.pid;

events{

use epoll;

worker_connections65535;

}

http{

include mime.types;

default_typeapplication/octet-stream;

#log_formatmain'$remote_addr-$remote_user [$time_local]"$request"'

#'$status$body_bytes_sent"$http_referer"'

#'"$http_user_agent""$http_x_forwarded_for"';

#access_loglogs/access.logmain;

sendfileon;

#tcp_nopush on;

#keepalive_timeout0;

keepalive_timeout65;

#gzipon;

server{

listen 8099;

server_name 10.117.52.157;##对外访问的IP和端口号

access_log/tmp/cms/access.log;

error_log/tmp/cms/error.log;

#charset koi8-r;

#access_loglogs/host.access.logmain;

location/{

includeuwsgi_params;

uwsgi_pass 127.0.0.1:8088;

uwsgi_read_timeout 300;

}

#error_page404/404.html;

# redirect server error pages to the static page/50x.html

#

#error_page 500 502 503 504/registration/500.html;

#location=/registration/500.html{

#root html;

#}

location/static/{

alias/root/cms/cms/static/;

indexindex.html index.htm;

}

location/media/{

alias/root/cms/cms/media/;

}

}

}

(3)运行and重启

/usr/local/nginx/sbin/nginx

启动: nginxstart

重启: nginx-s reload

4.使用uwsgi的配置文件运行django

在确保nginx运行之后,就可以通过uwsgi来运行django了。nginx在最外层接收请求,静态的自己处理,动态的通过socket端口交给uwsgi来处理。

配置文件内容如下

[uwsgi]

socket=:8088#要和nginx对应的IP和端口号一致

chdir=/root/cms/cms#APP的目录

module=cms.wsgi#wsgi.py文件位置

touch-reload=/root/cms/cms/reload#重启只要输入命令touch reload文件即可

processes=4

threads=2

daemonize=/tmp/cms/wsgi.log#日志文件位置

放在APP的上一级目录

直接运行uwsgi--ini uwsgi.ini即可

如何在Linux上使用Nginx和Gunicorn托管Django应用

apt-get

服务器拿到手后第一件事就是更新apt-get,要换源什么的自己搜一大堆。之前因为系统不小心选成了Ubuntu 10.04了,遇到一大堆问题,后来换到12.04一切顺利。

apt-get update

pip

pip还是建议更换源,速度是飞一般的感觉。具体方法可以看看我之前介绍的那篇文章《Pythoner的福利,豆瓣的PyPI源》

sudo apt-get install python-pip

Django

Django不用说肯定是用pip装,我一般是用的最新版,这样就可以了。

sudo pip install django

Nginx

首先给默认的Nginx配置备个份,这是好习惯。目录位于/etc/nginx/sites-available/default

cp/etc/nginx/sites-available/default default.bak

然后Vim编辑

vim/etc/nginx/sites-available/default

server{

listen 80;

server_name;

access_log/var/log/nginx/isaced.log;

location/{

proxy_pass;

proxy_set_header Host$host;

proxy_set_header X-Real-IP$remote_addr;

proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;

}

location/static/{

root/data/isaced;#Django项目所在目录

}

以上是最简单的Nginx配置,目的是为能跑起来就行,更多其他详细配置还请参照其他文章。

Gunicorn

Gunicorn是一个朋友(CloverStd)推荐的,一个开源Python WSGI UNIX的HTTP服务器,Github仓库地址在这,传说速度快(配置快、运行快)、简单,默认是同步工作,支持Gevent、Eventlet异步,支持Tornado,官方有很详细的文档可以参阅。

需要在你的Django项目的settings.py中的INSTALLED_APPS加入:gunicorn

gunicorn--worker-class=gevent isaced.wsgi:application

--worker-class

指定工作方式,这里我用的gevent

如果提示You need gevent installed to use this worker则表示你还没有安装gevent。

isaced.wsgi:application

这里是指你的项目名,在Django创建项目的时候会自动生成对应名字文件夹中的wsgi.py,这里就是指的它。

###nohup

nohup是一个Linux命令,用来不挂断地运行某条命令。这里我们用它来执行gunicorn,来保持gunicorn进程不会被挂断。

nohup gunicorn--worker-class=gevent NSLoger.wsgi:application-b 127.0.0.1:8000

--worker-class来指定工作方式为gevent,-b指定地址和端口号。

注意:在尾部加上(and)字符表示后台运行

执行这条命令后可以用ps命令查看进程,就能看到gunicorn了~

Start

好了,以上就是整个服务器的配置了。然后我们重启下Nginx,刷新页面就能看到你的Django App了。

sudo service nginx restart

我有个linux的虚拟主机,我想运行django网站,怎么办?

我是linux主机,我这样在本地运行django

1在终端进入django项目的文件夹,是有manage.py的那个目录

2然后运行python manage.py runserver

就可以跑起来了

linux怎么安装django

使用说明

1、打开精通django(django 1.8 lts全解)下载并解压,得出pdf文件

2、如果打不开本文件,请务必下载pdf阅读器

3、安装后,在打开解压得出的pdf文件

4、双击进行阅读

如何在服务器上部署Django项目并使其在后台一直运行

前几天老师让我把一个Django项目(爬虫网页)放到校园内网上,但是我想先用自己的服务器来尝试一下。之前刚好有在Digital Ocean上买过服务器用来运行ss脚本,平时服务器一直放着没啥用,所以就拿它来试验一下。

废话不多说,第一步通过WinSCP软件把Django文件传到服务器上。

在服务器中安装Django需要的环境和我所需要的Python第三方库。

以上所有步骤完成后,还需要进行一步操作,这是我经历的一个坑。打开Django文件目录中的 settings.py,把 ALLOWED_HOSTS=[]改为 ALLOWED_HOSTS=["*"]。

在服务器中打开到 manage.py所在的目录,输入命令:

python3 manage.py runserver 0.0.0.0:8000

然后按下回车,在浏览器中输入:该服务器IP地址:8000,大功告成!

Attention:

1. python3不是特定的,是根据你的Django项目所需要的环境指定的。

2. 8000是端口号,可以修改。

如果想要Django项目一直运行,关闭终端后还在运行,即需要运行如下命令, nohup command, command即位上文所说的 python3 manage.py runserver 0.0.0.0:8000。

结语:以上就是首席CTO笔记为大家介绍的关于linux怎么运行django程序和运行django项目的命令的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

如何在Ubuntu14.04上搭建私有docker registry-Linux

运行私有docker registry,就好比为docker镜像运行私有git仓库。在Ubuntu14.04上搭建私有docker registry-Linux的步骤:

第一步——安装必要的软件

1、在docker registry服务器上,应当创建一个拥有sudo权限的用户(如果可以,在客户机上也如此)。

2、docker registry软件是一款python应用,因此为了使其能够运行起来,需要安装python开发环境以及必要的库:

sudo apt-get updatesudo apt-get-y install build-essential python-dev libevent-dev python-pip liblzma-dev

第二步——安装并配置docker registry

1、为了安装最新的稳定的docker registry发行版,将使用python包管理工具pip:

sudo pip install docker-registry

2、docker-registry需要配置文件。默认地,pip将该配置文件放置在相当偏僻的地方,因系统中python的安装位置而异。因此,为了找到该路径,将尝试运行registry,以查看相关的输出:

gunicorn--access-logfile---debug-k gevent-b 0.0.0.0:5000-w 1 docker_registry.wsgi:application

3、由于配置文件不在正确的位置,上述尝试将会以失败而告终,并输出一条包含FileNotFoundError错误消息。

Ubuntu安装Odoo

说个坑,需要先进root账户。否则会有创建不了相关文档及位置的提示报错。

wget

tar-zxf Python-3.9.0.tgz

cd Python-3.9.0

./configure--prefix=/usr/local/python3

./configure--enable-optimizations

Step 1: Update Server

Step 2: Create Odoo User in Ubuntu

Step 3: Install PostgreSQL Server

Step 4: Create Odoo user for postgreSQL

Step 5: Install Python Dependencies

Step 6: Install Python PIP Dependencies

Step 7: Install other required packages

Step 8: Install Wkhtmltopdf

Step 9: Create Log directory

Step 10:Install Odoo

Step 11: Setting permissions on home folder

Step 12: Create server config file

Step 13: Install other Dependencies

Step 14:创建一个 Systemd Unit文件

打开你的文本编辑器,并且在/etc/systemd/system/目录下创建一个名为odoo.service的文件,将下面的内容粘贴到文件中:

保存文件并且关闭编辑器。

设置该文件的权限

通知 Systemd有一个新的 unit文件:

Step 15: Now Start Odoo

通过执行下面命令启用并且启动 Odoo服务:

或者直接执行以下命令

你可以通过下面的命令检查服务状态:

想要查看 Odoo服务日志,使用下面的命令:

打开你的浏览器,输入:

假设所有安装完成,你将会看到下面这样的屏幕:

如果你无法访问这个页面,那很可能是你的防火墙阻止了端口8069。请在宝塔面板(或通过防火墙命令)放行端口8069,云服务器上防火墙策略也应放行。

将 Nginx配置成 SSL代理服务器

默认的 Odoo网站服务器通过 HTTP服务。想要使 Odoo部署更安全,我们将会配置 Nginx作为 SSL代理服务器,使网站服务器通过 HTTPS进行服务。

SSL代理服务器是一个用来处理 SSL加密解密的代理服务器。这意味着,Nginx将会处理并且解密进来的 TLS连接(HTTPS),并且传递未被加密的请求到内部服务(Odoo)。在 Nginx和 Odoo之间的流量将不会被加密。

使用一个反向代理服务器有很多好处,比如负载均衡,SSL,缓存,压缩,静态内容服务,等等。

确保你满足下面的前提条件,再继续下一步的安装配置:

一个指向你的服务器的公网 IP的域名,我们使用example.com。

安装 Nginx

域名的 SSL证书。你可以安装一个免费的 Encrypt SSL证书。

打开你的文本编辑器,创建或者编辑域名服务器配置块:

下面的配置将会建立 SSL,HTTP转向 HTTPS,WWW转向 non-www,缓存静态文件,并且开启 GZip压缩。

不要忘记使用你自己的 Odoo域名替换 example.com并且设置正确的 SSL证书地址。

一旦你完成了,重启 Nginx和Odoo服务:

此时,反向代理服务器配置好了,你可以通过 来访问 Odoo了。

改变监听端口

这一步是可选的,但是它是一个很好的实践操作。

默认情况下,Odoo服务监听所有网络接口的8069端口。想要禁止对 Odoo的直接访问,你可以封锁8069端口,并且强制 Odoo只监听本地监控。

我们将会配置 Odoo仅仅监听 127.0.0.1。打开配置文件,添加下面的内容到文件最后面:/etc/odoo13.conf

保存配置文件,并且重启 Odoo服务器,使修改生效:

如果日志出现以下错误

「connect() failed(111: Connection refused) while connecting to upstream, client: XX.XX.XX.XX, server:, request:"POST/longpolling/poll HTTP/1.1", upstream:" ", host:"XX.XX.XX.XX", referrer:" "」

解决:

Let's just say you have a longpolling parameter in your odoo-server.conf

and set

after starting your odoo, just runs$ sudo netstat-tulpn to ensure that your longpolling is running, and you'll get this info:

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:8072 0.0.0.0:* LISTEN 10121/python3

tcp 0 0 0.0.0.0:8069 0.0.0.0:* LISTEN 10119/python3

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1461/sshd

...

when you can't find your longpolling there(that's why Bad Gateway Occurs, nginx can not find the running longpolling port), maybe just need to install gevent first:

and restart your odoo.

check$ sudo netstat-tulpn again, and you'll see that your longpolling port already running..

启用多进程

默认情况下,Odoo工作在多线程模式。对于产品级别的部署,我们推荐修改成多进程服务器,提升稳定性,并且充分利用系统资源。

想要启用多进程,你需要编辑 Odoo配置文件,并且设置一个非 0的工作进程数字。工作进程数字,基于系统中的 CPU核心数字和可用的 RAM内存来计算。

通过 Odoo官方文档计算工作进程的数量以及需要的 RAM内存大小,你可以使用下面的公式:

工作进程数量计算:

工作进程最大数量理论值=(system_cpus* 2)+ 1

1个工作进程可以服务约等于 6个并行客户。

Cron进程也需要 CPU

RAM内存大小计算

我们考虑 20%的请求是重请求,并且 80%的请求是轻量级请求。重量级请求使用将近 1GB RAM,而轻量级请求使用将近 150MB RAM。

需要的 RAM= number_of_workers*((light_worker_ratio* light_worker_ram_estimation)+(heavy_worker_ratio* heavy_worker_ram_estimation))

如果你不知道你的系统有多少 CPU,你可以使用下面的grep命令:

比方说,你有一个系统,拥有 4核心 CPU,8GB RAM内存,和 30个并行 Odoo用户。

30 users/ 6= 5(5是所需要的理论工作进程数量)

(4* 2)+ 1= 9(9是理论的最大工作进程数量)

基于上面的计算,你可以使用 5个进程+1个进程(Cron进程)总共 6个进程。

基于工作进程,计算 RAM内存:

RAM= 6*((0.8 150)+(0.2 1024))~= 2 GB of RAM

计算结果显示,Odoo安装将会需要大概 2GB内存。

想要切换到多进程模式,打开配置文件,并且添加计算值:/etc/odoo-server.conf

重启 Odoo服务,使修改生效:

阅读剩余
THE END