Tutorial

Como Instalar o Django e Configurar um Ambiente de Desenvolvimento no Ubuntu 20.04

Published on May 21, 2020
Português
Como Instalar o Django e Configurar um Ambiente de Desenvolvimento no Ubuntu 20.04

Introdução

O Django é um framework web de código aberto, escrito em Python com seus princípios fundamentais sendo escalabilidade, reusabilidade e desenvolvimento rápido. Ele também é conhecido por sua consistência a nível de framework e pelo baixo acoplamento, permitindo que os componentes sejam independentes uns dos outros.

Neste tutorial, vamos configurar um ambiente Django para fins de desenvolvimento em um servidor Ubuntu 20.04. Para um site ativo, você terá considerações adicionais, incluindo a conexão a um banco de dados, configuração de um nome de domínio e adição de camadas de segurança. Temos uma variedade de tutoriais de Django que podem ajudar você enquanto você cria sob nossa tag Django.

Pré-requisitos

Para completar este tutorial, você irá precisar de:

Passo 1 — Instalando o Django

Há várias maneiras de instalar o Django, usando o gerenciador de pacotes Python pip dentro de um ambiente virtual.

Estando no diretório home do servidor, vamos criar o diretório que conterá nossa aplicação Django. Execute o seguinte comando para criar um diretório chamado django-apps, ou outro nome de sua escolha. Em seguida, vá até o diretório.

  1. mkdir django-apps
  2. cd django-apps

Estando dentro do diretório django-apps, crie seu ambiente virtual. Vamos chamá-lo de generic env, mas você deve usar um nome que é significativo para você e seu projeto.

  1. virtualenv env

Agora, ative o ambiente virtual com o seguinte comando:

  1. . env/bin/activate

Você saberá que ele está ativado assim que o prefixo for alterado para (env), que será parecido com o seguinte, dependendo de qual diretório você está:

Dentro do ambiente, instale o pacote Django usando o pip. A instalação do Django nos permite criar e executar aplicações Django.

  1. pip install django

Uma vez instalado, verifique sua instalação do Django executando uma verificação de versão:

  1. django-admin --version

Esta, ou algo parecido, será a saída resultante:

Output
3.0.6

Com o Django instalado em seu servidor, podemos seguir em frente para criar um projeto de teste para garantir que tudo esteja funcionando corretamente. Criaremos uma aplicação web esqueleto.

Passo 2 — Ajustando as Configurações de Firewall

Se você seguiu nosso tutorial de configuração inicial do servidor ou tiver um firewall em execução em seu servidor, vamos precisar abrir a porta que vamos usar no firewall do nosso servidor. Para o firewall UFW, você pode abrir a porta com o seguinte comando:

  1. sudo ufw allow 8000

Se você estiver usando o Firewall da DigitalOcean, você pode selecionar HTTP das regras de entrada. Você pode ler mais sobre o Firewall da DigitalOcean e criar regras para ele modificando as regras de entrada.ou inbound rules

Passo 3 — Iniciando o Projeto

Agora, podemos gerar uma aplicação usando o django-admin, um utilitário de linha de comando para tarefas de administração em Python. Em seguida, podemos usar o comando startproject para criar a estrutura de diretórios do projeto para nosso site de teste.

Estando no diretório django-apps, execute o seguinte comando:

  1. django-admin startproject testsite

Nota: executar o comando django-admin startproject <projectname> irá nomear tanto o diretório do projeto quanto o pacote de projeto como <^><projectname> e criar o projeto no diretório em que o comando foi executado. Se o parâmetro opcional <destination> for fornecido, o Django utilizará o diretório de destino fornecido como diretório do projeto e criará o manage.py e o pacote do projeto dentro dele.

Agora podemos ver quais arquivos de projeto foram criados. Navegue até o diretório testsite , em seguida liste o conteúdo desse diretório para ver quais arquivos foram criados:

  1. cd testsite
  1. ls
Output
manage.py testsite

Você notará a saída que mostra que este diretório contém um arquivo chamado manage.py e uma pasta chamada testsite. O arquivo manage.py é similar ao django-admin e coloca o pacote do projeto no sys.path. Ele também define a variável de ambiente DJANGO_SETTINGS_MODULE para apontar para o arquivo settings.py do seu projeto.

Você pode ver o script manage.py em seu terminal executando o comando less dessa forma:

  1. less manage.py

Quando você terminar de ler o script, pressione q para parar de visualizar o arquivo.

Agora, vá até o diretório testsite para visualizar os outros arquivos que foram criados:

  1. cd testsite/

Em seguida, execute o seguinte comando para listar o conteúdo do diretório:

  1. ls

Você verá quatro arquivos:

Output
__init__.py asgi.py settings.py urls.py wsgi.py

Vamos analisar o que são esses arquivos:

  • __init__.py atua como o entry point para seu projeto Python.
  • O asgi.py contém a configuração para o deployment opcional na Interface de Gateway de Servidor Assíncrono ou ASGI, que fornece um padrão para aplicativos que são síncronos e assíncronos, e é considerado como um sucessor do WSGI (veja abaixo).
  • settings.py descreve a configuração de sua instalação do Django e permite que o Django saiba quais configurações estão disponíveis.
  • urls.py contém uma lista de urlpatterns, que roteia e mapeia URLs para suas views
  • wsgi.py contém a configuração para a Interface de Gateway do Servidor Web ou WSGI, que fornece um padrão para aplicativos Python síncronos.

Nota: embora os arquivos padrão sejam gerados, você ainda tem a capacidade de ajustar os arquivos asgi.py ou wsgi.py, a qualquer momento para os adequar às necessidades do seu deployment.

Passo 4 — Configurando o Django

Agora, podemos iniciar o servidor e visualizar o site em um host e porta designados executando o comando runserver.

Vamos precisar adicionar o endereço IP do seu servidor à lista ALLOWED_HOSTS no arquivo settings.py, localizado em ~/test_django_app/testsite/testsite/.

Como indicado em Django docs, a variável ALLOWED_HOSTS contém "uma lista de strings representando os nomes de host/domínio que este site de Django pode servir. Esta é uma medida de segurança para evitar ataques de cabeçalhos de Host HTTP, que são possíveis mesmo em muitas configurações de servidor web aparentemente seguras.

Você pode usar seu editor de texto favorito para adicionar seu endereço IP. Por exemplo, se você estiver usando o nano, execute o seguinte comando:

  1. nano ~/django-apps/testsite/testsite/settings.py

Assim que executar o comando, você irá querer acessar a seção Allowed Hosts do documento e adicionar o endereço IP do seu servidor dentro de colchetes entre aspas simples ou duplas.

settings.py
"""
Django settings for testsite project.

Generated by 'django-admin startproject' using Django 2.0.
...
"""
...
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

# Edit the line below with your server IP address
ALLOWED_HOSTS = ['your-server-ip']
...

Você pode salvar a alteração e sair do nano mantendo pressionadas as teclas CTRL + x e, em seguida, pressionando a tecla y. Em seguida, vamos seguir em frente para acessar nosso app web através de um navegador.

Finalmente, vamos criar um usuário administrativo para que você possa usar a interface admin do Django. Vamos fazer isso com o comando createsuperuser:

  1. python manage.py createsuperuser

Você será solicitado a incluir um nome de usuário, um endereço de e-mail, e uma senha para seu usuário.

Passo 5 — Acessando o App Web do Django

Com nossa configuração concluída, certifique-se de voltar para o diretório onde o manage.py está localizado:

  1. cd ~/django-apps/testsite/

Agora, execute o seguinte comando substituindo o texto your-server-ip pelo IP do seu servidor:

  1. python manage.py runserver 0.0.0.0:8000

Por fim, você pode acessar o link abaixo para ver como seu site esqueleto se apresenta, substituindo novamente o texto destacado pelo IP real do seu servidor:

http://your-server-ip:8000/

Assim que a página carregar, você verá o seguinte:

Django Default Page

Isso confirma que o Django foi instalado corretamente e o projeto de teste está funcionando corretamente.

Para acessar a interface admin, adicione /admin/ ao final do seu URL:

http://your_server_ip:8000/admin/

Isso o levará a uma tela de login:

Django admin login

Se você digitar o nome de usuário e senha do admin que você acabou de criar, você terá acesso à seção admin principal do site:

Django admin page

Para mais informações sobre trabalhar com a interface admin do Django, por favor, veja “Como Habilitar e Conectar a Interface Admin do Django.”

Quando você terminar de testar seu app, você pode pressionar CTRL + C para parar o comando runserver. Isso o retornará para seu ambiente de programação.

Quando estiver pronto para deixar seu ambiente Python, você pode executar o comando deactivate:

  1. deactivate

A desativação do seu ambiente de programação o levará de volta ao prompt de comando do terminal.

Conclusão

Neste tutorial, você instalou o Django com sucesso e configurou um ambiente de desenvolvimento para começar a trabalhar em seu app Django.

Agora você tem a base necessária para começar a desenvolver aplicações web no Django.

Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.

Learn more about us


About the authors

Still looking for an answer?

Ask a questionSearch for more help

Was this helpful?
 
Leave a comment


This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Join the Tech Talk
Success! Thank you! Please check your email for further details.

Please complete your information!

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
DigitalOcean Cloud Control Panel