15
Iniciando com Viagem ao mundo django! 1

Iniciando com django

Embed Size (px)

Citation preview

Iniciando com

Viagem ao mundo django!1

Apresentação

● Graduado em Análise de Sistemas pela FATENE

● Programador de Sistemas de Informação Prefeitura de Fortaleza

[email protected]

https://www.linkedin.com/in/marcelotdsantos

2

Python

É uma linguagem de programação criada por Guido Van Rossum

em 1991. Os objetivos do projeto da linguagem era: produtividade e

legibilidade. Em resumo, Python é uma linguagem de programação

que foi criada para produção de código bom e fácil de manter de

forma rápida.

3

https://docs.python.org/devguide/#quick-start

Quick Start

Testando o PythonPor meio do terminal, digite:

$ python

Isso vai abrir o python no modo iterativo, para que você pode testar o trecho abaixo, digite o código e pressione ENTER:

>>> 5 * 5

25 // resultado da multiplicação entre os números

>>> ‘marcelo’.upper()

‘MARCELO’ // resultado da transformação da string para maiúsculo

4

Django

Django é um framework escrito em python, gratuito com código

aberto, muito utilizado para criação de aplicações web. Seu

ecossistema possui um conjunto de componentes que torna

produtivo o desenvolvimento de aplicações web, sendo fácil e rápida

a realização de implementações.

5

https://www.djangoproject.com/start/

Quick Start

Vamos de Docker, o que é?● Processo de desenvolvimento e deploy

○ O Servidor é um Navio Carregado de Containers e cada Container possui mercadorias○ O Docker é a ferramenta para criar e manter esses containers, ou melhor, ele fica

responsável por armazenar vários serviços de forma isolada do SO Host, como: web server, banco de dados, aplicação e etc.

○ Seu back-end é baseado no LXC (Linux Containers), este isola processos do sistema operacional host. Muito leve, pois não é preciso fazer emulação ou suporte a hardware. Permite execução de sistemas linux de forma isolada, por isso o nome: Container. Utiliza o mesmo Kernel do servidor Host, performático.

6

Get Starthttps://docs.docker.com/engine/getstarted/

Docker ComposerO docker-compose utilizando-se do docker, torna a criação de ambientes de desenvolvimento algo muito simples. O composer depende do Docker (previamente instalado). Com tudo pronto, vamos instalar o composer.

Siga as instruções de acordo com seu ambiente:

https://docs.docker.com/compose/install/

7

Dockerfile

Com o docker e docker-compose instalados, vamos preparar a estrutura do nosso projeto. Vamos criar uma pasta nomeada à sua escolha, aqui chamada de django-app e dentro deste vamos criar nosso Dockerfile (informações sobre a infra do projeto), com o seguinte conteúdo:

8

FROM python:2.7ENV PYTHONUNBUFFERED 1RUN mkdir /codeWORKDIR /codeADD requirements.txt /code/RUN pip install -r requirements.txtADD . /code/

É o arquivo que especifica como uma imagem no docker será criada, os pacotes que serão instalados, usuários que serão criados, portas que serão expostas, diretórios que serão compartilhados entre o host e um container, etc.

requirements.txtNeste arquivo vamos inserir as dependências do nosso projeto, no caso vamos utilizar o Django, sendo assim o conteúdo do arquivo será:

Django

Se nosso projeto fosse com Django e o django_restframework, então o arquivo seria:

Django

djangorestframework

* Uma dependência abaixo da outra, simples assim!9

Docker Composer

Vamos criar um arquivo, "docker-compose.yml", com a configuração abaixo:

10

web: build: . //ponto do build, diretório que o arquivo encontra-se command: python manage.py runserver 0.0.0.0:8000 //comando para rodar o dj volumes: - .:/code //pasta compartilhando código entre o container e o host ports: - "8000:8000" //porta onde o container e host irão se comunicar

É o arquivo de configuração do docker-compose, é composto por blocos e cada bloco corresponde a um container, podendo eles serem "linkados", o docker-compose utilizará esse arquivo como base para criar os conteineres necessários, e executar tudo que foi especificado no mesmo.

Host: Nosso computador, onde temos nossa IDE preferida. :-)

Mão na massa

Após a realização dos procedimentos anteriores, vamos então criar nossa

aplicação django com o comando abaixo:

$ docker-compose run web django-admin.py startproject minhastarefas

Após rodar esse comando será criada a pasta minhastarefas no diretório.

11

Configurações no settings.py

Neste arquivo existem diversas configurações referentes ao projeto django, desde

definição de idioma, time zone, banco de dados, diretório de templates e etc. Vou

citar como exemplo a mudança do idioma de en-US para pt-BR.

LANGUAGE_CODE = 'pt-BR'

Com isso se utilizarmos o django admin, ele já ficará no idioma português do brasil.

12

Rodando a aplicaçãoNa pasta raiz do projeto, execute o comando:

$ docker-compose up

O docker-compose vai criar nosso caso o container web e startar a aplicação na porta 8000, acesse seu http://localhost:8000 e você verá sua aplicação em execução.

13

Executando comandos django

Podemos executar comando do django com docker da seguinte forma:

$ docker-compose run <CONTAINER-NAME> <COMANDO-DESEJADO>

Para sincronizarmos o banco de dados da aplicação podemos fazê-lo da seguinte forma:

$ docker-compose run web ./manage.py syncdb

14

Obrigado à todos!

15

● Referências

https://docs.docker.com/compose/django/

https://www.djangoproject.com/

https://www.python.org/