Implantar no Azure
Este exercício exige uma área restrita. Uma área restrita fornece acesso a recursos gratuitos. Não haverá cobranças na sua assinatura pessoal.
Você só pode usar a área restrita para concluir o treinamento no Microsoft Learn. O uso da área restrita por qualquer outro motivo é proibido e poderá resultar na perda permanente do acesso a ela.
Para disponibilizar seu site para o público, você o implantará no Azure. Você usará a extensão do Serviço de Aplicativo do Azure no Visual Studio Code para simplificar o processo.
Instalar a extensão do Serviço de Aplicativo do Azure
Comece instalando a extensão do Serviço de Aplicativo do Azure no Visual Studio Code:
No Visual Studio Code, selecione o ícone Extensões.
No campo Pesquisar Extensões, digite Serviço de Aplicativo.
Em Serviço de Aplicativo do Azure, escolha Instalar.
Se você já tiver a extensão do Serviço de Aplicativo do Azure, verifique se ela está atualizada para a versão mais recente. Confira a última data atualizada na página de extensão. Se você estiver trabalhando com a versão mais recente, verá um nó RESOURCES com um nó dos Serviços de Aplicativos.
Implantar o aplicativo
Ao seguir as etapas para clonar o repositório inicial, você também deve ter alterado o diretório para a pasta inicial antes de abrir o VS Code. O diretório inicial contém o arquivo manage.py que sinaliza para o Serviço de Aplicativo que você está implantando um aplicativo Web Django.
No Visual Studio Code, na barra de ferramentas, selecione o ícone do Azure.
Selecione Entrar para entrar no Azure usando a mesma conta que você usou para criar a área restrita.
Na barra RECURSOS da extensão do Azure, passe o mouse e selecione o ícone + (sinal de adição) para criar um recurso.
Se solicitado a escolher uma assinatura, escolha sua assinatura do Azure.
Selecione Criar Serviço de Aplicativo da Web....
Forneça um nome exclusivo para o aplicativo.
Selecione Python 3.9 como a pilha de runtime.
Selecione um tipo de preço.
A extensão criará seu aplicativo Web. O processo levará alguns minutos.
Quando o aplicativo Web é criado, você é solicitado a implantar o aplicativo Web no Serviço de Aplicativo, selecione Implantar.
Se você perder a notificação de implantação do aplicativo ou fechá-la, também poderá implantar o aplicativo encontrando o Serviço de Aplicativo que criou, clicar com o botão direito do mouse nele e selecionar Implantar no Aplicativo Web.
Agora, seu site será implantado.
Criar o servidor de banco de dados
Agora crie o banco de dados PostgreSQL.
Na barra RECURSOS da extensão do Azure, passe o mouse e selecione o ícone + (sinal de adição) para criar um recurso.
Se solicitado a escolher uma assinatura, escolha sua assinatura do Azure.
Selecione Criar Servidor de Banco de Dados....
Para o Servidor de Banco de Dados do Azure, selecione Servidor Flexível do PostgreSQL.
Insira um nome exclusivo para o servidor de banco de dados.
Importante
Anote o nome usado para o servidor de banco de dados.
Selecione o SKU do Postgres e as opções.
Para o nome do usuário administrador, insira shelter_admin.
Insira uma senha segura, como "86i^z5#emSk6wu3t10nC*".
Importante
Ao criar a senha, não use cifrões (
$
). Esse símbolo pode causar problemas de conexões no Python. Anote a senha usada.Insira a senha uma segunda vez para confirmá-la.
Para o grupo de recursos, selecione o mesmo grupo de recursos no qual seu aplicativo Web foi criado.
Para localizar o nome e o local do grupo de recursos usados para criar o aplicativo Web, localize o Serviço de Aplicativo na extensão do Azure, clique com o botão direito do mouse no nome e selecione Exibir Propriedades. Na chave "ID", o nome do grupo de recursos é a parte a seguir "/resourceGroups/". A chave "local" mostra o local.
Você também pode clicar com o botão direito do mouse no nome do Serviço de Aplicativo e selecionar Abrir no Portal para localizar o nome e o local do grupo de recursos.
Para o local dos novos recursos, selecione o mesmo local do grupo de recursos e do aplicativo Web.
Importante
Quando você criar vários recursos do Azure que se comunicarão entre si, sempre coloque-os na mesma região. Essa colocação garante o melhor desempenho.
Seu servidor será criado agora. Esse processo levará alguns minutos.
Criar uma regra de firewall de banco de dados para permitir o acesso do ambiente de desenvolvimento
Depois que o banco de dados for criado, você precisará criar uma regra de firewall para permitir que o ambiente do desenvolvedor acesse o banco de dados. Aguarde até que o banco de dados exista antes de seguir as próximas etapas para criar a regra.
Abra a paleta de comandos do Visual Studio Code com F1 ou com a combinação de teclas Ctrl + Shift + P.
Pesquise "PostgreSQL: Configurar Firewall" e selecione-o.
Quando solicitado que o recurso aplique o firewall, selecione o banco de dados Postgres que você criou.
Uma caixa de diálogo final pede para continuar e mostra o endereço IP que ele adicionará. Selecione Sim.
Leva alguns minutos para adicionar a regra. Confira a janela de notificação do VS Code para obter o status.
Criar um banco de dados no servidor de banco de dados
Agora que você configurou o Serviço de Aplicativo e criou o servidor, crie o banco de dados no Servidor de Banco de Dados do Postgres.
Nos RECURSOS da extensão ferramentas do Azure, expanda o nó Servidores PostgreSQL (Flexível) e localize o servidor que você criou.
Clique com o botão direito do mouse no nome do servidor de banco de dados e escolha Criar Banco de Dados.
Insira abrigos.
O banco de dados será criado.
Permitir acesso ao servidor de banco de dados do Serviço de Aplicativo
Neste exercício, você também precisa do aplicativo Web de abrigos para cães hospedado no Serviço de Aplicativo do Azure para se conectar ao Servidor Flexível do Banco de Dados do Azure para PostgreSQL. Quando um aplicativo no Azure tenta se conectar ao seu servidor de banco de dados, o firewall verifica se as conexões do Azure são permitidas. Acima, você permitiu conexões de seu ambiente local. Agora, você também deve permitir conexões do Serviço de Aplicativo.
No VS Code, nos RECURSOS da extensão ferramentas do Azure, expanda o nó Servidores PostgreSQL (Flexível) e localize o servidor que você criou.
Clique com o botão direito do mouse no nome do servidor de banco de dados e selecione Abrir no Portal.
Selecione o recurso Rede do Servidor Postgres.
Selecione a opção Permitir acesso público nos serviços do Azure dentro do Azure para este servidor no portal, na guia Rede, e selecione Salvar.
Definir configurações de aplicativo para o aplicativo Web
O Serviço de Aplicativo usa as configurações de aplicativo para configurar variáveis de ambiente. As configurações são uma forma conveniente de armazenar informações que você não deve colocar no código, como cadeias de conexão de banco de dados.
Em Serviço de Aplicativo, expanda a assinatura de área restrita. Depois, expanda o aplicativo.
Para criar a primeira configuração de aplicativo, clique com o botão direito do mouse em Configurações de Aplicativo e selecione Adicionar Nova Configuração.
No primeiro campo, insira o nome DBUSER.
No segundo campo, insira o valor shelter_admin.
Repita as etapas anteriores para criar as configurações restantes:
Name Valor DBHOST <The server name you created previously>
DBPASS <The password you created previously>
DBUSER shelter_admin
DBNAME shelters
SECRET_KEY <Generate a secure password>
Observação
Substitua os valores DBHOST e DBPASS por aqueles que você criou anteriormente neste exercício. Em SECRET_KEY, crie uma senha.
Todas as variáveis de ambiente necessárias agora serão criadas no serviço de aplicativo.
Criar o esquema e o superusuário
A última etapa na implantação é configurar o banco de dados. No desenvolvimento local, você executará python manage.py migrate
e python manage.py createsuperuser
para criar o esquema e o superusuário do banco de dados. No Azure, você fará o mesmo.
Você se conectará ao servidor Web no Azure usando o SSH (Secure Shell). Você pode fazer a conexão no Visual Studio Code conforme mostrado abaixo.
Na extensão do Serviço de Aplicativo, clique com o botão direito do mouse no serviço de aplicativo e selecione SSH no Aplicativo Web.
Uma conexão SSH será feita com o servidor Web no Azure. Esse processo pode levar alguns minutos. Um painel do terminal será exibido no Visual Studio Code. Esse terminal é a conexão SSH com o servidor Web. Se você tiver problemas para se conectar, confira as etapas de solução de problemas abaixo.
Importante
Se você receber uma mensagem de erro informando que precisa habilitar o SSL para o banco de dados, verifique se criou todas as variáveis de ambiente corretamente.
No painel do terminal do SSH, execute os comandos a seguir para verificar se as bibliotecas apropriadas estão instaladas e para criar o banco de dados.
# Run database migrations python manage.py makemigrations dog_shelters python manage.py migrate
Crie o superusuário executando o comando a seguir.
python manage.py createsuperuser
Forneça um nome, um endereço de email e uma senha para o superusuário.
Depois de criar o superusuário, execute o comando
exit
para fechar a conexão.
Seu banco de dados agora está configurado no Azure, e você tem um superusuário para seu site.
Solucionar problemas de SSH
Se você não conseguir se conectar ao SSH por meio do VS Code, veja algumas etapas que você pode tentar:
Vá para a página do portal do Azure para o Serviço de Aplicativo e acesse o SSH por lá. No VS Code, clique com o botão direito do mouse no nome do Serviço de Aplicativo e selecione Abrir no Portal. Na página do portal do Serviço de Aplicativo, vá para os recursos SSH no painel de recursos à esquerda.
Verifique se o Serviço de Aplicativo que hospeda o aplicativo Web foi iniciada corretamente. Se houver um erro de implantação ou um problema de codificação, é possível que o Serviço de Aplicativo não tenha sido iniciado e você não poderá usar o SSH nele. Na página do portal do Serviço de Aplicativo, vá para Diagnosticar e resolver problemas no painel de recursos esquerdo para procurar problemas.
Leia mais sobre o SSH no Serviço de Aplicativo.
Acessar seu site
Agora que você implantou e configurou tudo, veja seu site no Azure.
Na extensão do Serviço de Aplicativo, clique com o botão direito do mouse no nome do seu site e selecione Procurar Site.
Agora, seu site será exibido. A página padrão não mostra abrigos. Para adicionar abrigos:
Vá para a parte de administração do Django do site adicionando "/admin" a URL do site.
Você será solicitado a autenticar com o nome do superusuário e a senha que você criou acima.
Adicione um abrigo e navegue de volta para a página principal e você poderá registrar um cão nesse abrigo.
Aqui está uma captura de tela de exemplo do site:
Se você tentar acessar uma localização que não existe no site, receberá um erro genérico Não encontrado porque DEBUG
está desabilitado.
Você acabou de implantar um site no Azure.