Django

Uma estrutura web Python que incentiva o desenvolvimento rápido e um design limpo e pragmático.

1. SSH para o seu servidor

ssh root@<server-ip>

2. Encontre as credenciais de login

  • Utilizador predefinido: django
  • Palavra-passe armazenada em: /root/.cloudzy-creds

(Opcional) Altere a palavra-passe padrão: passwd django

3. Mude para o utilizador da aplicação

su - django

4. PostgreSQL (opcional)

Se o PostgreSQL foi instalado, configure o banco de dados e o utilizador (exemplo):

sudo -u postgres psql
CREATE DATABASE <db>;
CREATE USER <user> WITH PASSWORD <password>;
GRANT ALL PRIVILEGES ON DATABASE <db> TO <user>;
q

Em seguida, atualize settings.py DATABASES com anfitrião localhost, nome da base de dados, utilizador e palavra-passe. Executar python manage.py migrate.

5. Implemente a sua aplicação

Um aplicativo Flask de exemplo já está em execução e pode ser acessado em: http://<server-ip

Para implementar a sua própria aplicação:

  1. Navegue até o diretório do seu aplicativo (ou clone um novo projeto): cd ~/django_app
  2. (Opcional) Substituir a aplicação predefinida: git clone <your_repo_url> .
  3. Ative o ambiente virtual: source venv/bin/activate
  4. Instale os pacotes necessários: pip install -r requirements.txt
  5. Ajustar settings.py: definir ALLOWED_HOSTS para o seu domínio/IP e certifique-se de que STATIC_ROOT existe.
  6. Migrar base de dados: python manage.py migrate
  7. Recolher estática em STATIC_ROOT: python manage.py collectstatic --noinput
  8. Reinicie o Gunicorn para aplicar as alterações: sudo systemctl restart gunicorn
  9. Reinicie o Nginx: sudo systemctl restart nginx

6. Aceda à sua aplicação

Your Django app is available at: http://<server-ip

O Nginx está a fazer proxy reverso das solicitações para o Gunicorn através do soquete Unix.

7. Alterar porta ou domínio?

Para ajustar o domínio, a porta ou adicionar SSL:

  1. Editar a configuração do site Nginx: sudo nano /etc/nginx/sites-available/gunicorn_django
  2. Configuração do teste: sudo nginx -t
  3. Recarregar o Nginx: sudo systemctl restart nginx

8. Ativar HTTPS (opcional)

Use o Certbot para ativar o HTTPS.

Instale o certbot:

sudo apt install certbot python3-certbot-nginx -y

Obtenha certificados e atualize o Nginx automaticamente:

sudo certbot --nginx -d example.com

Teste:

nginx -t && sudo systemctl reload nginx

Detalhes da candidatura