Django + PGSQL + Docker Template
Tecnologias usadas:
- Django
- Django Rest Framework
- Docker
- Postgres
Como usar o template
-
Se você for usar algum tipo de biblioteca adicional no projeto django, lembre-se de adicionar ao arquivo
requirements.txt
antes de proseguir. -
Mude o arquivo
.env.example
para.env
e preencha com os dados solicitados.
# DJANGO
# DEBUG = 1 or 0
DEBUG=
SECRET_KEY=
# DJANGO_ALLOWED_HOSTS = localhost 127.0.0.1 [::1] ...
DJANGO_ALLOWED_HOSTS=
# POSTGRES
POSTGRES_DB=
POSTGRES_USER=
POSTGRES_PASSWORD=
# PGADMIN
PGADMIN_DEFAULT_EMAIL=
PGADMIN_DEFAULT_PASSWORD=
-
Se quiser usar o template
drf
quando for iniciar a aplicação Django sinta-se a vontade. Lembre-se de checar todas as configrações tanto emsettings.py
quanto em outros arquivos. -
Com tudo preparado rode no terminal o comando:
$ docker-compose run web django-admin startproject nome_do_app .
Ele ira iniciar a build do Docker e ira criar o app django principal.
DevContainer VSCODE
Se você usa o VsCode com a extensão devcontainers
você pode abrir o projeto e começar a desenvolver. Basta apenas que você inicie e selecione a Workspace web
.
Usando o Docker
Caso você não use o VsCode você terá que usar o docker para fazer a migração, iniciar o server e etc.
Com isso basta apenas que você sempre o rode o comando do docker mais a operação desejada.
Exemplo:
$ docker-compose run web python manage.py migrate
ou
$ docker-compose run web python manage.py runserver
Usando o PGADMIN
Se por acaso você for usar o PGADMIN para fazer a manipulação de dados do postgres. Aqui vai umas instruções.
- Crie o usuário root com o comando:
$ docker-compose exec web python manage.py createsuperuser
-
Abra o PGADMIN em
localhost:5050
em algum navegador. -
Faça login com as informações passadas no arquivo
.env
PGADMIN_DEFAULT_EMAIL=
PGADMIN_DEFAULT_PASSWORD=
- Crie uma conexão com o postgres usando o host
db
- O nome que terá que ser passado é
docker_django_postgres_db
. ( Lembre-se que esse nome pode ser alterado no arquivo compose )
- Insira as informações solicitadas, ambas podem ser consultadas no arquivo
.env
que você tem. ( Ou se preferir nosettings.py
)
- E pronto, agora é só conferir as informações usando a barra lateral do PGADMIN.
Consultas/Links
Documentação do Docker com Django
Criando um projeto Django com Docker