wils@web ~ $ cat ~/ajuda/como-configurar-gunicorn-20-1-0-para-servir-aplicacoes-flask-em-servidores-ubuntu-22-04.md
DesenvolvimentoComo configurar Gunicorn 20.1.0 para servir aplicações Flask em servidores Ubuntu 22.04
Este manual irá guiá-lo na configuração do Gunicorn 20.1.0 para servir aplicações Flask em servidores Ubuntu 22.04.
Introdução
Gunicorn é um servidor WSGI para aplicações Python, ideal para produção. Neste guia, vamos configurar Gunicorn para trabalhar com uma aplicação Flask.
Pré-requisitos
- Servidor Ubuntu 22.04
- Python 3 e pip instalados
- Aplicação Flask já criada
Passo a passo
1. Atualizar o sistema
sudo apt update && sudo apt upgrade -y 2. Instalar o Gunicorn
pip install gunicorn==20.1.0 3. Criar um arquivo de aplicação Flask
Crie um arquivo chamado app.py com o seguinte conteúdo:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
if __name__ == '__main__':
app.run() 4. Testar a aplicação Flask
python app.py Acesse http://localhost:5000 para verificar se a aplicação está funcionando.
5. Executar o Gunicorn
gunicorn --bind 0.0.0.0:8000 app:app Isso irá iniciar o Gunicorn na porta 8000.
6. Configurar o Gunicorn como um serviço
Criar um arquivo de serviço no systemd:
sudo nano /etc/systemd/system/gunicorn.service Adicione o seguinte conteúdo:
[Unit]
Description=gunicorn daemon
After=network.target
[Service]
User=www-data
Group=www-data
WorkingDirectory=/caminho/para/sua/aplicacao
ExecStart=/usr/local/bin/gunicorn --access-logfile - --workers 3 --bind unix:/caminho/para/sua/aplicacao/app.sock app:app
[Install]
WantedBy=multi-user.target 7. Iniciar e habilitar o serviço
sudo systemctl start gunicorn
sudo systemctl enable gunicorn Conclusão
Agora você tem o Gunicorn configurado para servir sua aplicação Flask. Para um desempenho melhor, considere usar um proxy reverso como o Nginx. Isso pode ajudar a gerenciar conexões e melhorar a segurança.
Precisa de ajuda com isso no seu servidor? A gente resolve pra você.
falar no WhatsApp →// deu erro ou não funcionou?
Achou algo errado neste manual?
Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.