---
title: "Como instalar o Django."
version: 2.1
locale: pt-br
source: https://docs.djangoproject.com/pt-br/2.1/topics/install/
canonical: https://djangodocs.dev/pt-br/2.1/topics/install/
---
# Como instalar o Django.

Este documento lhe dirá como instalar e rodar o Django.

## Instalando Python

Django is a Python Web framework. See [Qual versão do Python eu posso usar com Django?](/pt-br/2.1/faq/install/#faq-python-version-support) for
details.

Obtenha a última versão do Python em <https://www.python.org/downloads/> ou no gerenciador de pacotes do seu sistema operacional.

> **Django no Jython**
>
> [Jython](http://www.jython.org/) (a Python implementation for the Java platform) is not compatible
> with Python 3, so Django ≥ 2.0 cannot run on Jython.

> **Python no Windows**
>
> Se você está apenas começando com o Django e usando Windows, você talvez ache [Como instalar o Django no Windows](/pt-br/2.1/howto/windows/)  útil.

## Instalando o Apache e o `mod_wsgi`

Se você quer apenas experimentar o Django, passe a frente para a próxima seção; o Django inclui um servidor Web leve que você pode usar para testes, aí você não precisa configurar o Apache anté que esteja pronto para implantar o Django em produção.

If you want to use Django on a production site, use [Apache](https://httpd.apache.org/) with
[mod\_wsgi](https://modwsgi.readthedocs.io/en/develop/). mod\_wsgi operates in one of two modes: embedded
mode or daemon mode. In embedded mode, mod\_wsgi is similar to
mod\_perl – it embeds Python within Apache and loads Python code into
memory when the server starts. Code stays in memory throughout the
life of an Apache process, which leads to significant performance
gains over other server arrangements. In daemon mode, mod\_wsgi spawns
an independent daemon process that handles requests. The daemon
process can run as a different user than the Web server, possibly
leading to improved security. The daemon process can be restarted
without restarting the entire Apache Web server, possibly making
refreshing your codebase more seamless. Consult the mod\_wsgi
documentation to determine which mode is right for your setup. Make
sure you have Apache installed with the mod\_wsgi module activated.
Django will work with any version of Apache that supports mod\_wsgi.

Veja [Como usar o Django com mod\_wsgi](/pt-br/2.1/howto/deployment/wsgi/modwsgi/) para informações de como configurar o mod\_wsgi depois de tê-lo instalado.

Se não pode usar o mod\_wsgi por alguma razão, não se preocupe: o Django suporta muitas outras opções para implantação. Uma é [uWSGI](/pt-br/2.1/howto/deployment/wsgi/uwsgi/); ele trabalha bem com o [nginx](https://nginx.org/). Adina, o Django segue a especificação ([**PEP 3333**](https://peps.python.org/pep-3333/)) WSGI, o qual lhe permiti rodar em uma variedade de plataformas de servidores.

## Tenha seu banco de dados rodando

Se você planeja usar a funcionalidade de API de banco de dados do Django, terá que assegurar que um servidor de banco de dados está rodando. O Django suporta muitos tipos diferentes de servidores de bancos de dados diferentes, e oficialmente tem suporte para [PostgreSQL](https://www.postgresql.org/), [MySQL](https://www.mysql.com/), [Oracle](https://www.oracle.com/) e [SQLite](https://www.sqlite.org/).

If you are developing a simple project or something you don’t plan to deploy
in a production environment, SQLite is generally the simplest option as it
doesn’t require running a separate server. However, SQLite has many differences
from other databases, so if you are working on something substantial, it’s
recommended to develop with the same database that you plan on using in
production.

Além dos bancos de dados oficialmente suportados, existem [“backends” fornecidos por terceiros](/pt-br/2.1/ref/databases/#third-party-notes) que permitem que você use outros bancos de dados com o Django.

Além do “backend” do banco de dados, você precisa assegurar que seus “bindings” para Python para o banco de dados estão instalados.

- Se você estiver usando o PostgreSQL, você precisa do pacote [psycopg2](http://initd.org/psycopg/). Veja as [Notas sobre PostgreSQL](/pt-br/2.1/ref/databases/#postgresql-notes) para maiores detalhes.
- Se você está usando MySQL, você irá precisar um [Driver para DB API](/pt-br/2.1/ref/databases/#mysql-db-api-drivers) como `mysqlclient`. Veja [notas para o Backend do MySQL](/pt-br/2.1/ref/databases/#mysql-notes) para detalhes.
- Se você estiver usando SQLite você talvez queira ler as [Notas para o Backend do SQLite](/pt-br/2.1/ref/databases/#sqlite-notes).
- Se você estiver usando Oracle, você irá precisar de uma cópia do [cx\_Oracle](https://oracle.github.io/python-cx_Oracle/), mas por favor leia as [notas para o Backend do Oracle](/pt-br/2.1/ref/databases/#oracle-notes) para detalhes sobre versões suportadas para ambos o Oracle e o `cx_Oracle`.
- Se você estiver usando um “backend” não oficial de terceiros, por favor consulte a documentação fornecida para qualquer requerimento adicional.

Se você planeja usar o comando `manage.py migrate` do Django para automaticamente criar as tabelas do banco de dados para seus modelos (depois de primeiro instalar o Django e criar um projeto), você precisa se assegurar que o Django tem permissão para criar e alterar tabelas no banco de dados que estiver usando; Se você planeja criar manualmente as tabelas, você pode simplesmente dar permissões de `SELECT`, `INSERT`, `UPDATE` and `DELETE` ao Django. Depois de criar um usuário do banco de dados com estas permissões, você irá especificar os detalhes no arquivo de configuração do seu projeto, veja [`DATABASES`](/pt-br/2.1/ref/settings/#std-setting-DATABASES) para detalhes.

Se você está usando o [framework de testes](/pt-br/2.1/topics/testing/) do Django para testar consultas no banco de dados, o Django irá precisar de permissão para criar o banco de dados de teste.

## Instalando o código do Django.

As instruções de instalação são um pouco diferentes dependendo de se você está instalando um pacote de uma distribuição específica, fazendo o download da última versão oficial, ou pegando a última versão em desenvolvimento.

É fácil, não importa a maneira que você escolheu.

### Instalando uma versão oficial com `pip`

Este é o modo recomendável de instalar o Django.

1. Instale o [pip](https://pip.pypa.io/). A maneira mais fácil é usar o [standalone pip installer](https://pip.pypa.io/en/latest/installing/#installing-with-get-pip-py). Se sua distribuição já tem o `pip` instalado, você talvez precisa atualizá-lo se estiver desatualizado, você saberá porque a instalação não irá funcionar.
2. Take a look at [virtualenv](https://virtualenv.pypa.io/) and [virtualenvwrapper](https://virtualenvwrapper.readthedocs.io/en/latest/). These tools provide
   isolated Python environments, which are more practical than installing
   packages systemwide. They also allow installing packages without
   administrator privileges. The [contributing tutorial](/pt-br/2.1/intro/contributing/) walks through how to create a virtualenv.
3. After you’ve created and activated a virtual environment, enter the command:

   ```console
   $ pip install Django
   ```

   *Windows*

   ```doscon
   ...\> pip install Django
   ```

### Instalando um pacote de uma distribuição específica.

Verifique as [notas específicas de distribuições](/pt-br/2.1/misc/distributions/) para ver se sua plataforma/distribuição fornecem pacotes/instaladores oficiais do Django. Pacotes fornecidos por distribuições tipicamente irão permitir uma instalação automática de dependências e facilmente atualizar os “paths”; contudo, estes pacotes raramente irão conter a última versão do Django.

### Instalando a versão de desenvolvimento.

> **Acompanhando o desenvolvimento do Django.**
>
> Se você decidir usar a última versão de desenvolvimento do Django, você precisará acompanhar de perto o [the development timeline](https://code.djangoproject.com/timeline), e irá querer manter um olho no [notas de desenvolvimento para o próximo lançamento](/pt-br/2.1/releases/#development-release-notes). Isso lhe ajudará a se manter no topo de qualquer nova funcionalidade que você talvez queira usar, assim como qualquer mudança que você precise fazer no seu código quando atualizar sua cópia do Django. (Para lançamentos estabilizados, qualquer mudança necessária é documentada nas notas de lançamento.)

Se você quiser ser capaz de ocasionalmenete atualizar o seu código Django com as últimas correções e melhorias, siga estas instruções:

1. Assegure-se que tenha instalado o [Git](https://git-scm.com/) e que você pode executar seus comandos no seu shell. (Digite `git help` no “prompt” do seu shell para testar.)
2. Pegue o pricipal ramo de desenvolvimento do Django como aqui:

   ```console
   $ git clone https://github.com/django/django.git
   ```

   *Windows*

   ```doscon
   ...\> git clone https://github.com/django/django.git
   ```

   Isso irá criar um diretório `django` no seu diretório corrente.
3. Make sure that the Python interpreter can load Django’s code. The most
   convenient way to do this is to use [virtualenv](https://virtualenv.pypa.io/), [virtualenvwrapper](https://virtualenvwrapper.readthedocs.io/en/latest/), and
   [pip](https://pip.pypa.io/). The [contributing tutorial](/pt-br/2.1/intro/contributing/) walks through
   how to create a virtualenv.
4. Depois de configurar e ativar o virtualenv, rode o seguinte comando:

   ```console
   $ pip install -e django/
   ```

   *Windows*

   ```doscon
   ...\> pip install -e django\
   ```

   Isso fará com que o código do Django seja passível de importação, e fará co que o comando utilitário `django-admin` esteja disponível. Em outras palavras, você está pronto.

Quando quiser atualizar sua cópia do código fonte do Django, apenas rode o comando `git pull` de dentro do diretório do Django. Quando fizer isso, o Git automaticamente irá baixar qualquer mudança.
