Awesome Docker Compose samples
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
awesome-compose/django-redis
cankush625 067f88f326
feat(django-redis): docker-compose sample for Django and Redis integration
3 years ago
..
django_redis feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
.env.example feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
.gitignore feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
Dockerfile feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
README.md feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
docker-compose.yml feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago
requirements.txt feat(django-redis): docker-compose sample for Django and Redis integration 3 years ago

README.md

Compose sample application

Python/Django application using a Redis database

Project structure:

.
├── django_redis
│   ├── config/
│   │   └── settings.py
│   ├── database/
│   │   ├── migrations/
│   │   ├── admin.py
│   │   ├── apps.py
│   │   ├── models.py
│   │   ├── urls.py
│   │   └── views.py
│   ├── asgi.py
│   ├── manage.py
│   └── wsgi.py
├── .env
├── .env.example
├── .gitignore
├── docker-compose.yml
├── Dockerfile
├── README.md
└── requirements.txt

The .env file should have the environment variables that are specified in the .env.example file.

docker-compose.yml

services:
  redis:
    image: redislabs/redismod
    ports:
      - '6379:6379'
  web:
    build: .
    command: python django_redis/manage.py runserver 0.0.0.0:8000
    env_file:
      - .env
    ports:
      - '8000:8000'
    volumes:
      - .:/code
    depends_on:
      - redis

Deploy with docker-compose

$ docker-compose up -d
[+] Running 2/2
 - Container djangoredis-redis-1  Started
 - Container djangoredis-web-1    Started

Expected result

Listing containers must show two containers running and the port mapping as below:


$ docker ps
CONTAINER ID   IMAGE                COMMAND                  CREATED         STATUS          PORTS                    NAMES
384fcfc8a3d3   djangoredis_web      "python django_redis…"   2 minutes ago   Up 41 seconds   0.0.0.0:8000->8000/tcp   djangoredis-web-1
9b6c3ce8d394   redislabs/redismod   "redis-server --load…"   2 minutes ago   Up 44 seconds   0.0.0.0:6379->6379/tcp   djangoredis-redis-1

After the application starts, navigate to http://localhost:8000/hello-redis in your web browser or run:

$ curl localhost:8000/hello-redis
This page has been visited 5 times

Stop and remove the containers

$ docker-compose down
[+] Running 3/3
 - Container djangoredis-web-1    Removed
 - Container djangoredis-redis-1  Removed
 - Network djangoredis_default    Removed