Save 15% on All Hosting Services

Teste as suas habilidades e obtenha Desconto em qualquer plano

Utilizar o código: Skills Começar a trabalhar
Secções
Administração Linux

Como Instalar Django em um Servidor de Hospedagem: Um Guia Completo Passo a Passo

Django é um framework web Python de alto nível projetado para encorajar o desenvolvimento rápido e o design limpo e pragmático. Continua sendo uma das escolhas mais populares para construir aplicações web escaláveis, seguras e mantíveis — desde blogs simples até plataformas empresariais complexas. Neste guia abrangente, vamos orientá-lo em cada etapa necessária para instalar Django em um servidor de hospedagem, desde a preparação do seu ambiente Linux até a execução do seu primeiro projeto e sua preparação para produção.

Por que escolher Django para sua aplicação web?

Antes de mergulhar no processo de instalação, vale a pena entender por que Django continua dominando o cenário de desenvolvimento web em Python:

  • Baterias incluídas: Django vem com autenticação integrada, painel de administração, ORM, manipulação de formulários e recursos de segurança prontos para usar.
  • Escalabilidade: Django alimenta plataformas de alto tráfego como Instagram e Pinterest.
  • Design focado em segurança: Django protege contra vulnerabilidades comuns, incluindo injeção SQL, XSS, CSRF e clickjacking por padrão.
  • Desenvolvimento rápido: Sua filosofia de convenção sobre configuração permite que os desenvolvedores lancem recursos mais rapidamente.
  • Ecossistema massivo: Milhares de pacotes reutilizáveis e uma grande comunidade significam que soluções para quase qualquer problema já existem.

Para aproveitar ao máximo o Django, você vai querer um ambiente de servidor confiável. Um plano de VPS Hosting oferece o acesso root, recursos dedicados e flexibilidade que as aplicações Django exigem.

Pré-requisitos

Antes de começar o processo de instalação, certifique-se de que você tem o seguinte em vigor:

  • Um servidor de hospedagem executando uma distribuição Linux (Ubuntu 20.04/22.04 ou Debian são recomendados)
  • Acesso SSH ao servidor com privilégios sudo
  • Python 3.8 ou superior (Python 3.10+ recomendado)
  • pip (gerenciador de pacotes do Python) instalado
  • Familiaridade básica com a linha de comando Linux

> Dica profissional: Se você estiver executando uma aplicação Django em produção, evite ambientes de hospedagem compartilhada. Um plano de VPS Hosting ou um Servidor Dedicado oferecerá o controle e desempenho que sua aplicação precisa.

Passo 1: Conectar ao seu servidor via SSH

Abra seu terminal e estabeleça uma conexão SSH com seu servidor de hospedagem:

ssh username@server_ip

Substitua username pelo seu nome de usuário do sistema real e server_ip pelo endereço IP público do seu servidor. Se você estiver usando uma porta SSH personalizada ou um arquivo de autenticação baseado em chave, ajuste o comando de acordo:

ssh -i /path/to/your/key.pem username@server_ip

Uma vez conectado, você terá uma interface de linha de comando para seu servidor onde pode começar o processo de configuração.

Passo 2: Atualizar seu sistema e instalar Python e pip

Manter seus pacotes do sistema atualizados é um primeiro passo crítico tanto para segurança quanto para compatibilidade.

Atualizar o índice de pacotes

sudo apt update && sudo apt upgrade -y

Instalar Python 3 e pip

A maioria das distribuições modernas de Ubuntu e Debian vêm com Python 3 pré-instalado. Verifique sua versão do Python primeiro:

python3 --version

Se Python 3 não estiver instalado, ou você precisar de pip, instale-os com:

sudo apt install python3 python3-pip -y

Verifique as instalações:

python3 --version
pip3 --version

Você deve ver números de versão confirmando que ambas as ferramentas estão disponíveis.

Passo 3: Configurar um ambiente virtual Python

Usar um ambiente virtual não é apenas recomendado — é considerado uma prática recomendada para cada projeto Python. Os ambientes virtuais isolam as dependências do seu projeto da instalação Python em todo o sistema e de outros projetos no mesmo servidor, prevenindo conflitos de versão e mantendo seu ambiente limpo.

Instalar virtualenv

sudo pip3 install virtualenv

Alternativamente, você pode usar o módulo venv integrado do Python (disponível em Python 3.3+):

sudo apt install python3-venv -y

Criar seu diretório de projeto e ambiente virtual

Navegue até o diretório onde você deseja hospedar seu projeto, ou crie um novo:

mkdir myproject
cd myproject

Agora crie o ambiente virtual dentro do seu diretório de projeto:

virtualenv venv

Ou, usando o módulo venv integrado:

python3 -m venv venv

Ativar o ambiente virtual

source venv/bin/activate

Uma vez ativado, seu prompt de comando mudará para mostrar o nome do ambiente virtual, por exemplo:

(venv) username@server:~/myproject$

Todos os comandos pip install executados enquanto o ambiente virtual está ativo instalarão pacotes apenas dentro deste ambiente isolado. Para desativá-lo a qualquer momento, simplesmente execute:

deactivate

Passo 4: Instalar Django

Com seu ambiente virtual ativo, instale Django usando pip:

pip install django

Para instalar uma versão específica do Django (recomendado para produção para garantir compatibilidade):

pip install django==4.2

Verifique a instalação:

django-admin --version

Você deve ver o número da versão do Django instalado impresso no terminal.

Passo 5: Criar um novo projeto Django

Use a ferramenta de linha de comando django-admin integrada do Django para estruturar um novo projeto:

django-admin startproject myproject .

> Nota: O ponto final (.) diz ao Django para criar os arquivos do projeto no diretório atual em vez de criar um subdiretório aninhado. Esta é uma estrutura mais limpa para a maioria das implantações.

Seu diretório de projeto agora conterá a seguinte estrutura:

myproject/
├── manage.py
└── myproject/
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  • manage.py — Um utilitário de linha de comando para interagir com seu projeto Django.
  • settings.py — O arquivo de configuração central do seu projeto.
  • urls.py — A configuração de roteamento de URL.
  • wsgi.py / asgi.py — Pontos de entrada para servidores web compatíveis com WSGI e ASGI.

Passo 6: Configurar as definições do banco de dados

Abra o arquivo settings.py para configurar sua conexão com o banco de dados:

nano myproject/settings.py

Padrão: SQLite (apenas desenvolvimento)

Por padrão, Django é configurado para usar SQLite, que é adequado para desenvolvimento e testes, mas não é recomendado para produção:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}

Opção de produção: PostgreSQL

PostgreSQL é o banco de dados mais comumente recomendado para Django em produção. Primeiro, instale os pacotes necessários:

sudo apt install postgresql postgresql-contrib libpq-dev -y
pip install psycopg2-binary

Em seguida, atualize a configuração DATABASES em settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

Opção de produção: MySQL / MariaDB

Se você preferir MySQL ou MariaDB, instale o adaptador necessário:

sudo apt install default-libmysqlclient-dev -y
pip install mysqlclient

Em seguida, configure a configuração DATABASES:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydatabase',
        'USER': 'myuser',
        'PASSWORD': 'mypassword',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

Configurar ALLOWED_HOSTS

Enquanto estiver em settings.py, também atualize a configuração ALLOWED_HOSTS para incluir o endereço IP ou nome de domínio do seu servidor. Isto é necessário para que Django sirva solicitações em modo não-debug:

ALLOWED_HOSTS = ['your_server_ip', 'yourdomain.com', 'www.yourdomain.com']

Passo 7: Aplicar migrações do banco de dados

Django usa um sistema de migração para gerenciar alterações de esquema de banco de dados. Execute as migrações iniciais para criar todas as tabelas de banco de dados necessárias:

python manage.py migrate

Você verá uma saída listando cada migração sendo aplicada. Uma migração bem-sucedida se parece com:

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  ...

Criar um superusuário (opcional, mas recomendado)

Crie uma conta de administrador para acessar a interface de administração integrada do Django:

python manage.py createsuperuser

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

Passo 8: Executar o servidor de desenvolvimento Django

Agora você pode iniciar o servidor de desenvolvimento integrado do Django para verificar sua instalação:

python manage.py runserver 0.0.0.0:8000

Este comando vincula o servidor de desenvolvimento a todas as interfaces de rede disponíveis na porta 8000. Abra seu navegador da web e navegue até:

http://your_server_ip:8000

Você deve ver a página de boas-vindas do Django — um foguete com a mensagem “A instalação funcionou com sucesso! Parabéns!”

Para acessar o painel de administração, navegue até:

http://your_server_ip:8000/admin

> Importante: O servidor de desenvolvimento integrado do Django não é adequado para produção. É single-threaded, não otimizado para desempenho e carece de endurecimento de segurança. Sempre use um servidor web de nível de produção para implantações ao vivo.

Passo 9: Preparar Django para produção (recomendado)

Para implantações em produção, você precisa configurar uma pilha de servidor web adequada. A configuração mais comum e recomendada é Nginx + Gunicorn.

Instalar Gunicorn

Com seu ambiente virtual ativo:

pip install gunicorn

Teste se Gunicorn pode servir sua aplicação:

gunicorn --bind 0.0.0.0:8000 myproject.wsgi

Instalar e configurar Nginx

sudo apt install nginx -y

Crie um arquivo de configuração de bloco de servidor Nginx:

sudo nano /etc/nginx/sites-available/myproject

Adicione a seguinte configuração:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    location = /favicon.ico { access_log off; log_not_found off; }

    location /static/ {
        root /home/username/myproject;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

Ative a configuração e reinicie o Nginx:

sudo ln -s /etc/nginx/sites-available/myproject /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

Coletar arquivos estáticos

Atualize settings.py com o diretório de arquivos estáticos:

STATIC_ROOT = BASE_DIR / 'staticfiles'

Em seguida, colete todos os arquivos estáticos:

python manage.py collectstatic

Proteja sua aplicação com SSL

Para qualquer aplicação Django em produção, HTTPS é inegociável. Um Certificado SSL criptografa dados em trânsito entre seu servidor e seus usuários, protege informações sensíveis e é necessário para indicadores de confiança do navegador moderno. AlexHost oferece certificados SSL que se integram perfeitamente ao seu ambiente de hospedagem.

Considerações adicionais de produção

Variáveis de ambiente para configurações sensíveis

Nunca codifique valores sensíveis como SECRET_KEY, senhas de banco de dados ou chaves de API em settings.py. Use variáveis de ambiente:

pip install python-decouple

Em settings.py:

from decouple import config

SECRET_KEY = config('SECRET_KEY')
DEBUG = config('DEBUG', default=False, cast=bool)

Defina DEBUG como False em produção

DEBUG = False

Executar com DEBUG = True em produção expõe páginas de erro detalhadas e informações de configuração sensíveis a possíveis atacantes.

Configurar um nome de domínio

Se você ainda não registrou um domínio para seu projeto Django, Registro de domínio através do AlexHost facilita obter seu domínio apontado para seu servidor rapidamente, com gerenciamento DNS completo incluído.

Escolher a hospedagem certa para sua aplicação Django

O ambiente de hospedagem que você escolhe tem um impacto significativo no desempenho, confiabilidade e escalabilidade da sua aplicação Django. Aqui está um guia rápido:

Caso de usoHospedagem recomendada
Desenvolvimento e testesHospedagem web compartilhada
Aplicações de produção pequenas a médiasVPS Hosting
Aplicações de alto tráfego ou com uso intensivo de recursosServidores dedicados
Aplicações Django integradas com aprendizado de máquina / IAHospedagem GPU

Para a maioria dos projetos Django que estão entrando em produção, um plano de VPS Hosting oferece o equilíbrio ideal entre desempenho, controle e custo-efetividade. Você obtém acesso root, a capacidade de instalar qualquer pilha de software e recursos dedicados que a hospedagem compartilhada não pode fornecer.

Solução de problemas de instalação comum do Django

pip: command not found

Instale pip manualmente: sudo apt install python3-pip -y

django-admin: command not found

Seu ambiente virtual pode não estar ativado. Execute source venv/bin/activate e tente novamente.

Porta 8000 não acessível

Verifique as regras de firewall do seu servidor. No Ubuntu com UFW:

sudo ufw allow 8000
sudo ufw reload

Conexão com banco de dados recusada

Verifique se seu serviço de banco de dados está em execução:

sudo systemctl status postgresql
# or
sudo systemctl status mysql

ALLOWED_HOSTS Erro

Certifique-se de que o endereço IP ou nome de domínio do seu servidor está listado na configuração ALLOWED_HOSTS em settings.py.

Conclusão

Administração Nomes de Domínio
Linux Servidores Virtuais
Administração Segurança

Save 15% on All Hosting Services

Teste as suas habilidades e obtenha Desconto em qualquer plano

Utilizar o código: Skills Começar a trabalhar
Acesso rápido à informação
Acesso rápido à informação

Poupe o seu tempo e obtenha uma resposta rápida à sua pergunta

Resolver os problemas sozinho
Resolver os problemas sozinho

A base de conhecimentos contém tutoriais pormenorizados, que lhe permitem realizar tarefas técnicas por si próprio.

Melhorar as competências
Melhorar as competências

Ao utilizar a base de conhecimentos, aumenta os seus conhecimentos sobre alojamento Web e tópicos relacionados

Ilustrações e diagramas
Ilustrações e diagramas

Muitos artigos são acompanhados de ilustrações e diagramas, facilitando a compreensão de processos e definições complexos.

Truques úteis
Truques úteis

Encontre dicas úteis para melhorar o desempenho do seu site ou aplicação web.

Relevância dos temas apresentados
Relevância dos temas apresentados

A informação na base de conhecimentos é actualizada regularmente para refletir as últimas mudanças e tendências no campo da infraestrutura de TI e do serviço AlexHost

Não encontrou o tema que estava à procura? Existe uma solução perfeita

Clientes e hóspedes excepcionais! A sua comodidade é a nossa prioridade! Se tiver dificuldades na instalação de algum software específico ou na implementação de um servidor, não hesite em contactar-nos. Valorizamos a sua opinião e estamos sempre prontos a ajudá-lo a resolver os seus problemas.

Além disso, damos-lhe a oportunidade de participar ativamente na criação da nossa base de conhecimentos. Se tiver tópicos ou perguntas que gostaria de incluir na nossa base de dados, diga-nos! Estamos prontos para escrever artigos e guias detalhados com base nas suas necessidades.

Esforçamo-nos para tornar a sua experiência com a AlexHost tão conveniente e eficiente quanto possível, e a sua contribuição para a base de conhecimento ajuda-nos a atingir este objetivo. Contacte-nos
info@alexhost.com e diga-nos como podemos tornar a sua estadia connosco ainda melhor.

Solution Image