servidor de implementación de matraz+nginx+uwsgi (tutorial detallado a nivel de niñera)

visión general

En este proyecto, usé el matraz para escribir una interfaz que debe implementarse en el servidor para el uso front-end. Subí muchos pozos en el camino, así que esta vez hice un registro detallado y te enseñé a ejecutar el matraz. proyecto desde cero.

Listo para trabajar

servidor

Primero, se requiere un servidor para la implementación. Se recomienda que use el servidor Tencent Cloud o Alibaba Cloud. Estoy usando el servidor Alibaba Cloud de la versión centos7.5 aquí, y luego configuro la información del grupo de seguridad. He abierto un puerto 5656 aquí.
inserte la descripción de la imagen aquí

Xshell

También necesita un software de conexión que simule la terminal del servidor para facilitar la operación. Yo uso Xshell, puede descargarlo usted mismo, hay muchos recursos en línea y luego abra el software para crear un nuevo enlace para conectarse al servidor, como se muestra en la figura, ingrese el comando para ver el archivo del servidor, incluso si la conexión es exitosa
inserte la descripción de la imagen aquí

xftp 7

Para la conveniencia de transferir archivos, aquí uso Xftp7. Puede arrastrar y cargar archivos directamente al servidor, y puede descargarlos usted mismo. Hay muchas opciones de software de visualización.

matraz de despliegue

selección de planes

Acabo de usar el esquema de implementación de nginx+uwsgi+flaks, aquí hay una introducción detallada a este, comencemos la implementación

instalación de python3

Para compilar el archivo del matraz, por supuesto, configure python en el servidor

which python
mkdir /usr/local/python3 
cd /usr/local/python3

Instalar dependencias

yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

instalar python3

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

Este método puede ser lento, también puede descargar el paquete de instalación del sitio web anterior y luego cargar el paquete de instalación en el servidor

Descomprimir el paquete comprimido

tar -xvJf  Python-3.6.2.tar.xz
cd Python-3.6.2
./configure --prefix=/usr/local/python3
make && make install

Crear enlaces blandos

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

En este momento, ingrese
inserte la descripción de la imagen aquípython3 en
el servidor, y aparecerá lo siguiente para indicar que la instalación fue exitosa, ingrese exit() y presione Enter para salir
directorio y ejecute el archivo

pip3 install flask
cd /root/firstdemo
python3 app.py

Después de que la operación sea exitosa, acceda a ella a través de la red pública del servidor, como se muestra en la figura, ingrese ctrl+c para detener la operación, y esto significa que el entorno de compilación de python del servidor se instaló correctamente
inserte la descripción de la imagen aquí

instalar uwsgi

Instalar

pip3 install uwsgi
find / -name uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

instalar nginx

Para conocer los pasos detallados para instalar nginx, vea mi otro artículo, haga clic en mí para verlo .

Configuración de nginx y uwsgi

configurar nginx

Hasta ahora, ya he completado la instalación de nginx por defecto, luego configure nginx e
ingrese la carpeta conf en el directorio nginx.

/usr/local/nginx/conf

Puede ver que hay un archivo de configuración llamado nginx.conf, en el que se realiza la configuración del archivo relacionado.
Hay muchos códigos predeterminados en el archivo. A continuación, simplificaré mi configuración de la siguiente manera:

worker_processes  4;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
  
   server {
    	listen 80;   // 监听的端口,默认为80端口
    	server_name 47.108.xxx.180;  //  这里写服务器公网ip
		location / {
                proxy_pass http://127.0.0.1:5000;    
                // 需要代理的地址,我的项目启动地址是这个
        	}
	
     }   
}

Después de completar el archivo de configuración, puede iniciar nginx.La operación de iniciar y detener nginx se explica en el artículo Haga clic en mí para verificar.

configurar uwsgi

Comencemos a configurar cosas relacionadas con uwsgi, primero ingrese a nuestra
carpeta de proyecto y cree un archivo llamado uwsgi.ini en la carpeta de proyecto

cd /root/firstdemo  //进入项目文件夹
vi uwsgi.ini //输入就自动创建了文件并进入了编辑模式

También puede usar directamente la herramienta visual
inserte la descripción de la imagen aquípara comenzar a configurar el archivo uwsgi, adjuntar la información de mi archivo, escribir comentarios sobre la información clave y configurar los demás según sus necesidades.

[uwsgi]
http-socket = 127.0.0.1:5000  // 启动地址
chdir = /root/firstdemo  // 项目地址
wsgi-file = app.py  // 项目的启动文件
callable = app
processes = 2
threads = 10
buffer-size = 32768
master = true
daemonize=flaskweb.log  // 日志文件保存在falskweb.log中
pidfile=uwsgi.pid

Una vez completada la configuración, puede iniciar uwsgi en el directorio raíz del proyecto. Las instrucciones de operación relevantes de uwsgi se adjuntan a continuación.

uwsgi --ini uwsgi.ini             // 启动
uwsgi --reload uwsgi.pid   // 重启

Ingrese al directorio, ingrese el comando para iniciar uwsgi, lo siguiente significa que el inicio se realizó correctamente

inserte la descripción de la imagen aquí

La implementación fue exitosa

Después de que el inicio sea exitoso, podemos usar el navegador para acceder a la red pública del servidor.
Porque en la configuración anterior de nginx, colocamos directamente la dirección de inicio en la ubicación/, es decir, reenviamos 127.0.0.1:5000 directamente a la IP de la red pública. , para que podamos dirigir la entrevista:
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/weixin_45745641/article/details/119617866
Recomendado
Clasificación