Implementar proyecto de matraz desde cero
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í.
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
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
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
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
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
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: