wils@web ~ $ cat ~/ajuda/guia-para-implantar-aplicacoes-flask-com-gunicorn-e-nginx-no-ubuntu-22-04.md
DesenvolvimentoGuia para implantar aplicações Flask com Gunicorn e Nginx no Ubuntu 22.04
Este guia fornece um passo a passo para implantar aplicações Flask utilizando Gunicorn como servidor WSGI e Nginx como servidor web reverso no Ubuntu 22.04.
Pré-requisitos
- Ubuntu 22.04 instalado.
- Python 3 e pip instalados.
- Flask instalado.
- Acesso root ou sudo.
Passo 1: Instalar Dependências
Primeiro, atualize o sistema e instale o Gunicorn e o Nginx:
sudo apt update
sudo apt install python3-pip nginx
pip3 install gunicorn flask
Passo 2: Criar a Aplicação Flask
Crie um diretório para sua aplicação e um arquivo app.py:
mkdir ~/minha_app
cd ~/minha_app
nano app.py
Adicione o seguinte código ao app.py:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return 'Hello, World!'
if __name__ == '__main__':
app.run()
Passo 3: Testar a Aplicação
Antes de prosseguir, teste a aplicação:
python3 app.py
Acesse http://localhost:5000 no navegador para verificar se está funcionando.
Passo 4: Rodar a Aplicação com Gunicorn
Para rodar a aplicação com Gunicorn, use o seguinte comando:
gunicorn --bind 0.0.0.0:8000 app:app
Passo 5: Configurar o Nginx
Crie um arquivo de configuração do Nginx:
sudo nano /etc/nginx/sites-available/minha_app
Adicione o seguinte conteúdo:
server {
listen 80;
server_name seu_dominio.com;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Ative a configuração e reinicie o Nginx:
sudo ln -s /etc/nginx/sites-available/minha_app /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
Conclusão
Agora, sua aplicação Flask deve estar acessível através do Nginx. Acesse http://seu_dominio.com para verificar. Dica: Para produção, considere usar um gerenciador de processos como o Supervisor para manter o Gunicorn ativo.
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.