How to setup Django, Gunicorn, Nginx and PostgreSQL service using docker compose?
Published on October 09,2020 by Maulik
Docker helps to simplify and set up a uniform platform for development, staging, and production environments. DevOps efforts are reduced by using docker technology. This article will help you understand the process of setting up:
- Django running via a gunicorn server as a docker service.
- Nginx running as a docker service.
- PostgreSQL running as a docker service.
Github Repo of Django, Gunicorn, Nginx, and PostgreSQL using Docker Compose.
What is Docker?
Docker is a technology to set up isolated individual containers of operating system environments. Our application services can be deployed in such containers. In simpler terms, a virtual environment which gives the operating system and other libraries installed for running any application services.
A file with a set of executable commands while building a docker image, is a docker file. For building and running applications, a docker file is a must.
Why we should use Docker?
We should use docker because it gives us an isolated environment for running our applications. Docker builds the image of the application, we can relate it to the installation package which can be installed where docker technology is installed. It helps to ship software and it can run on any platform which supports docker technology. Developers can reduce and avoid the errors coming in the production environment like development, starting, and production environments are the same.
What is the cost of Docker?
Docker community edition is free and available to use for all. If you are planning an advanced professional services docker company provides tools to use. These tools make docker usage much simpler and easier. You may the docker pricing for details.
How to use the Docker?
We can download the docker and install it on our local machines. Download docker from their official download link.
Here are basic commands of docker:
- docker build – It builds docker images
- docker pull – Pulls image from a container registry
- docker exec – Execute command line command inside a docker container
- docker run – Start the docker container
- docker stop – Stop the docker container
- docker images – Shows a list of docker images
More docker commands can be found on docker commands documentation.
What is docker-compose?
Docker-compose helps to create multiple services configuration files and start all services at once. Docker-compose is an open-source project. Docker-compose is used to define and create multiple docker container services.
Following is the directory structure of the project, it can be seen on GitHub repo as well:
.
└── docker
│ └── django
│ │ ├── dockerfile
│ │ └── scripts
│ │ │ ├── db_connectivity.sh
│ │ │ ├── gunicorn.sh
│ │ ├── .django_local_env
│ └── nginx
│ │ ├── dockerfile
│ │ ├── nginx.conf
│ └── postgres
│ │ ├── dockerfile
│ │ ├── .postgres_local_env
└── django_docker < Your main app >
├── docker-compose.yml
├── manage.py
├── requirements.txt
Steps to setup PostgresSQL as docker service
The following are the three major configurations for setting up PostgreSQL docker service:
- Create a docker file for Postgres at
docker/postgres/dockerfile
, it will pull the Postgres Image from the docker hub.FROM postgres:10.12
- Create
docker/postgres/.postgres_local_env
, it has the environment variables are used to configure the Postgress database server by the docker-compose process.POSTGRES_DB=django_db POSTGRES_PASSWORD=postgres POSTGRES_USER=postgres
- Please review the docker-compose.yml file, it contains a service and volume section for the Postgres database server.
version: '3' volumes: # static volume will be mounted to both nginx and django gunicorn services. static_volume: # postgres data volume will be mounted to postgres services postgres_data: services: postgres: command: postgres -c max_connections=100 build: context: . # it points to the docker file which has instruction to build this service. dockerfile: ./docker/postgres/dockerfile volumes: - postgres_data:/var/lib/postgresql/data/ ports: - "5432:5432" # all environment variables are defined in below file. env_file: - ./docker/postgres/.postgres_local_env
Steps to start Django via Gunicorn server as a docker service
Following are the configuration settings:
- Create a docker file for Postgres at
docker/django/dockerfile
, it will pull the Python 3 Image from the docker hub and execute all commands in a sequence, these commands will be considered as build steps.FROM python:3 # it will enable python to do stdout logs instead of being buffered ENV PYTHONUNBUFFERED 1 ENV LANG en_US.utf8 # creating RUN mkdir /app # copy all file in app folder COPY . /app # copy requriements.txt in app folder COPY requirements.txt /requirements.txt # copy db connectivity test script, because we have made /app as current working directory so script can be executed. COPY docker/django/scripts/db_connectivity.sh /db_connectivity.sh # copy start gunicorn server script, because we have made /app as current working directory so script can be executed. COPY docker/django/scripts/gunicorn.sh /gunicorn.sh # running pip command to install all dependencies RUN pip install -r requirements.txt RUN chmod +x /db_connectivity.sh RUN chmod +x /gunicorn.sh # making /app as a current working dir WORKDIR /app #It will check whether we are able to connect to postgres service or not. ENTRYPOINT ["/db_connectivity.sh"]
- Update
docker/django/.django_local_env
, file as per your configurations, here is the sample:DEBUG=1 SECRET_KEY=hfi&(e$#fyy1d^klhbg&u$ftx4(*[email protected]$yw* DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1 [::1] SQL_ENGINE=django.db.backends.postgresql_psycopg2 SQL_DATABASE=django_db SQL_USER=postgres SQL_PASSWORD=postgres SQL_HOST=postgres SQL_PORT=5432 DATABASE_URL=postgres://postgres:[email protected]:5432/django_db
docker/django/.db_connectivity.sh
will be executed during docker build. It checks the connectivity of PostgreSQL from Django docker service#!/bin/bash set -e cmd="[email protected]" function postgres_ready(){ python << END import sys from urllib import parse import psycopg2 try: result = parse.urlparse("$DATABASE_URL") print(result) username = result.username password = result.password database = result.path[1:] hostname = result.hostname port = result.port conn = psycopg2.connect( database = database, user = username, password = password, host = hostname, port = port ) except psycopg2.OperationalError as e: print(e) sys.exit(-1) sys.exit(0) END } until postgres_ready; do >&2 echo "Postgres is unavailable - sleeping" sleep 1 done >&2 echo "Postgres is up - continuing..." exec $cmd
- After
docker/django/db_connectivity.sh
executiondocker/django/gunicorn.sh
on docker build execution command. Here is gunicorn.sh :python /app/manage.py collectstatic --noinput python /app/manage.py migrate gunicorn django_docker.wsgi -b 0.0.0.0:8000 --timeout 900 --chdir=/app --log-level debug --log-file -
- Now we need to add django docker service in
docker-compose.yml
:version: '3' volumes: # static volume will be mounted to both nginx and django gunicorn services. static_volume: # postgres data volume will be mounted to postgres services postgres_data: services: postgres: command: postgres -c max_connections=100 build: context: . # it points to the docker file which has instruction to build this service. dockerfile: ./docker/postgres/dockerfile volumes: - postgres_data:/var/lib/postgresql/data/ ports: - "5432:5432" # all environment variables are defined in below file. env_file: - ./docker/postgres/.postgres_local_env django: build: context: . # it points to the docker file which has instruction to build this service. dockerfile: ./docker/django/dockerfile # this command will execute after execution all build steps from './docker/django/dockerfile' command: /gunicorn.sh volumes: - static_volume:/app/static # links attribute will let postgres service become available first. links: - postgres expose: - "8000" restart: always env_file: - ./docker/django/.django_local_env
Steps to expose the Django service via Nginx docker service
- Add/update
docker/nginx/dockerfile
file:FROM nginx:1.17 # copying our custom configuration to our nginx service COPY ./docker/nginx/nginx.conf /etc/nginx/nginx.conf
- Update/Configure
docker/nginx/nginx.conf
user nginx; worker_processes 2; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { # as mentioned on line 2 there will be 2 worker process # so in total 2*1024 = 2048 connections can be handled at a time worker_connections 1024; } http { # it includes support for all generic mime types. include /etc/nginx/mime.types; # It mentioned default mime type default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; upstream django_docker { # "django" is the web project as docker service. server django:8000; } server { # setting charset to utf-8 charset utf-8; # making nginx listen on port 8000 listen 8000; # servername is assigned here server_name localhost; # routing all request which includes url meda to /app/media/ so this traffic can be served by nginx location /static/ { alias /app/static/; } # routing all request which includes url meda to /app/media/ so this traffic can be served by nginx location /media/ { alias /app/media/; } location / { # checks for static file, if not found proxy to app proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; # django_docker is upstream object as mentioned on line 23, # basically it is pointing to django docker service as mentioned in docker-compose.yml proxy_pass http://django_docker; } } }
- Add the Nginx server to docker-compose.yml:
nginx: build: context: . dockerfile: ./docker/nginx/dockerfile ports: - "8000:8000" volumes: - static_volume:/app/static links: - django restart: always
- Finally, full docker-compose.yaml should look like this:
version: '3' volumes: # static volume will be mounted to both nginx and django gunicorn services. static_volume: # postgres data volume will be mounted to postgres services postgres_data: services: postgres: command: postgres -c max_connections=100 build: context: . # it points to the docker file which has instruction to build this service. dockerfile: ./docker/postgres/dockerfile volumes: - postgres_data:/var/lib/postgresql/data/ ports: - "5432:5432" # all environment variables are defined in below file. env_file: - ./docker/postgres/.postgres_local_env django: build: context: . # it points to the docker file which has instruction to build this service. dockerfile: ./docker/django/dockerfile # this command will execute after execution all build steps from './docker/django/dockerfile' command: /gunicorn.sh volumes: - static_volume:/app/static # links attribute will let postgres service become available first. links: - postgres expose: - "8000" restart: always env_file: - ./docker/django/.django_local_env nginx: build: context: . dockerfile: ./docker/nginx/dockerfile ports: - "8000:8000" volumes: - static_volume:/app/static links: - django restart: always
View Django application running via docker-compose
- Let’s run the docker build:
docker-compose up --build
from project root directory. - You can see the following output on the following: http://localhost:8000
157 Comments
DouglasMaH
2 hours, 7 minutes
buy clomid 50mg <a href=" https://clomidclo.com/# ">clomid for sale</a> clomid tablets for sale
DouglasMaH
1 day, 9 hours
tadalafil 10mg price <a href=" https://cialistlf.com/# ">cialis</a> lowest price tadalafil
DouglasMaH
2 days, 1 hour
stromectol without a doctor prescription <a href=" https://stromectolive.com/# ">stromectol for humans for sale</a> stromectol for sale
Stromclall
3 days, 16 hours
over the counter erectile dysfunction pills <a href=" https://edpilldrs.com/# ">ed treatment pills</a> best ed treatment pills
Stromclall
4 days, 7 hours
stromectol <a href=" https://stromectoldrs.com/# ">stromectol for sale</a> stromectol for sale
GregoryBUP
5 days, 18 hours
non prescription ed pills <a href=" https://canadapillsshop.com/# ">pet meds without vet prescription canada</a> legal to buy prescription drugs from canada
GregoryBUP
6 days, 9 hours
natural ed remedies <a href=" https://edpillcanada.com/# ">herbal ed treatment</a> pills for erection
GregoryBUP
1 week
cheapest ed pills <a href=" https://edpillcanada.com/# ">ed pills cheap</a> erection pills online
GregoryBUP
1 week, 1 day
ivermectin chickens <a href=" https://stromectolca.com/# ">how to take ivermectin</a> how to buy stromectol
GregoryBUP
1 week, 3 days
pills for ed <a href=" https://edpillcanada.com/# ">top erection pills</a> п»їerectile dysfunction medication
JamesoMigh
1 week, 5 days
can you buy prednisone over the counter in canada <a href=" https://prednisonemrt.online/# ">average cost of prednisone 20 mg</a> prednisone 80 mg daily
JamesoMigh
1 week, 5 days
ivermectin mechanism of action in scabies <a href=" https://stromectolmrt.online/# ">ivermectin and fluvoxamine</a> ivermectin demodex
JamesoMigh
1 week, 6 days
prednisone price <a href=" https://prednisonemrt.com/# ">buy prednisone online</a> how to get prednisone tablets
JamesoMigh
2 weeks
ed treatment pills <a href=" https://cheapdrugsmrt.com/# ">buy canadian drugs</a> ed aids
JamesoMigh
2 weeks
buy generic cialis in canada <a href=" https://cialismrt.com/# ">cialis usa prescription</a> cialis buy online canada
JamesoMigh
2 weeks, 1 day
ivermectin warnings <a href=" https://stromectolmrt.com/# ">stromectol prices</a> stromectol pill price
JamesoMigh
2 weeks, 2 days
cheap drugs <a href=" https://cheapdrugsmrt.online/# ">natural pills for ed</a> homepage
Charleswar
2 weeks, 4 days
<a href=" https://stromectol.company/# ">ivermectin coronavirus</a> ivermectin USA
Stacyliz
2 weeks, 5 days
where to get ivermectin <a href=" https://stromectol.company/# ">ivermectin cattle</a> oral ivermectin for humans
Stacyliz
2 weeks, 5 days
cheap cialis canadian <a href=" http://cialistadalafil.store/# ">buy cialis south africa</a> dapoxetine and cialis online
Stacyliz
2 weeks, 6 days
viagra without a doctor prescription walmart <a href=" http://cheapdrugs.store/# ">treatment for erectile dysfunction</a> medicines for ed
Stacyliz
2 weeks, 6 days
ed pills online pharmacy <a href=" http://cheapdrugs.best/# ">non prescription ed pills</a> ed treatment pills
Stacyliz
3 weeks
ivermectin uk <a href=" https://stromectol.company/# ">liquid ivermectin for humans</a> ivermectin use in humans
Stacyliz
3 weeks
ivermectin new zealand <a href=" http://stromectol.best/# ">can you buy ivermectin over the counter</a> ivermectin pill cost
Stacyliz
3 weeks, 2 days
buy prednisone without rx <a href=" http://deltasone.store/# ">generic prednisone 10mg</a> prednisone tablets india
Stacyliz
3 weeks, 2 days
prednisone 10 mg tablet cost <a href=" https://deltasone.shop/# ">prednisone 0.5 mg</a> cost of prednisone
HaroldArbib
3 weeks, 4 days
the best ed drug <a href=" http://drugsen.site/# ">erectile dysfunction drugs</a> homepage
HaroldArbib
3 weeks, 4 days
ed pills for sale <a href=" http://drugsen.site/# ">ed therapy</a> best ed solution
HaroldArbib
3 weeks, 5 days
overcoming ed <a href=" https://drugsus.shop/# ">ed drug prices</a> medications online
HaroldArbib
3 weeks, 5 days
best ed medications <a href=" http://drugsen.site/# ">medication for ed dysfunction</a> erectial disfunction
HaroldArbib
4 weeks
erectile dysfunction treatments <a href=" http://drugsfast.store/# ">the best ed pill</a> is ed reversible
HaroldArbib
4 weeks
buy prescription drugs online legally <a href=" http://drugsfast.store/# ">buy prescription drugs without doctor</a> sexual dysfunction in men
HaroldArbib
4 weeks, 1 day
male enhancement products <a href=" https://drugsus.shop/# ">ed treatment</a> prescription drugs canada buy online
HaroldArbib
4 weeks, 1 day
ed medicines <a href=" http://drugsen.site/# ">ed meds online without doctor prescription</a> sildenafil without a doctor's prescription
FrankNurse
1 month
where can i buy clomid pills online <a href=" https://clomidmst.com/# ">where can i buy clomid pills in south africa</a> clomid online pharmacy uk
FrankNurse
1 month
can you buy amoxicillin over the counter canada <a href=" https://amoxilmst.com/# ">amoxicillin no prescription</a> how to buy amoxicillin online
FrankNurse
1 month
clomid online fast shipping <a href=" https://clomidmst.com/# ">average price of clomid</a> clomid for sale in mexico
FrankNurse
1 month
order amoxicillin 500mg <a href=" https://amoxilmst.com/# ">generic amoxicillin cost</a> purchase amoxicillin online without prescription
FrankNurse
1 month
amoxicillin generic <a href=" https://amoxilmst.com/# ">amoxicillin pills 500 mg</a> amoxicillin 500 mg for sale
FrankNurse
1 month
can you order clomid online <a href=" https://clomidmst.com/# ">buy clomid pills</a> where to get clomid
FrankNurse
1 month
where can you buy prednisone <a href=" http://prednisoneen.store/# ">prednisone 5 mg</a> 5 mg prednisone daily
FrankNurse
1 month
3000mg prednisone <a href=" https://prednisoneus.shop/# ">prednisone 60 mg</a> buy prednisone 10 mg
FrankNurse
1 month
how to buy prednisone online <a href=" https://prednisoneus.shop/# ">purchase prednisone no prescription</a> no prescription prednisone canadian pharmacy
FrankNurse
1 month
buy clomid without script <a href=" http://clomidus.store/# ">clomid pills online</a> clomid over the counter in south africa
FrankNurse
1 month, 1 week
doxycycline india <a href=" http://doxycyclinefast.store/# ">doxycycline 200</a> where to get doxycycline in singapore
FrankNurse
1 month, 1 week
prednisone buy online nz <a href=" http://prednisoneen.store/# ">prednisone generic cost</a> prednisone 1 mg daily
FrankNurse
1 month, 1 week
amoxicillin 500mg capsule cost <a href=" https://amoxilfast.life/# ">cost of amoxicillin 875 mg</a> amoxicillin 50 mg tablets
FrankNurse
1 month, 1 week
where can i buy clomid tablets <a href=" http://clomidfast.site/# ">clomid capsules</a> clomid price in india
EdwardAbimb
1 month, 1 week
taking viagra and cialis together <a href=" http://cialiscnd.com/# ">which one is better viagra cialis or laverta</a> cialise without perscription
EdwardAbimb
1 month, 1 week
new cialis commercial 2010 <a href=" http://cialiscnd.com/# ">cialis cheap over night</a> does cialis make you last longer in bed
EdwardAbimb
1 month, 1 week
cialis generic 20 mg 30 pills <a href=" http://cialiscnd.com/# ">is cialis time released?</a> best prices for generic cialis
EdwardAbimb
1 month, 1 week
black cialis <a href=" http://cialiscnd.com/# ">cialis name brnd</a> how long cialis last
Strojoism
1 month, 2 weeks
ivermectin dogs dosage <a href=" https://stromectolns.com/# ">ivermectin fda</a> dr rajter ivermectin
Strojoism
1 month, 2 weeks
ivermectin how long does it take to work <a href=" https://stromectolns.com/# ">ivermectin otc</a> ivermectin for cats
Artrcriff
1 month, 2 weeks
cialis brand name without prescription <a href=" https://cls20.com/# ">how to get cialis 800mg</a> cialis 20 mg, best price
Artrcriff
1 month, 2 weeks
cialis with diapoxetine <a href=" https://cls20.com/# ">buying viagra or cialis min canada</a> viamedic cialis
Travismindy
1 month, 2 weeks
does viagra make you horny <a href=" https://edviagralove.com/# ">can i buy viagra over the counter</a> does viagra make your dick bigger
Travismindy
1 month, 2 weeks
get viagra prescription online <a href=" https://edviagralove.com/# ">can i take 200mg of viagra</a> will 10 year old viagra work
deerbappy
1 month, 3 weeks
Srkojw [url=https://oscialipop.com]buy cialis 5mg online[/url] Soybbj Propecia With Synthroid <a href=https://oscialipop.com>cialis and viagra sales</a> Muscle Propecia Finasteride Cmiona https://oscialipop.com - Cialis Hyujqv viagra pirata
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/15">Аквамен</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/16">Человек-паук Вдали от дома</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/11">Гравитация</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/5">Выживший</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/11">Гравитация</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/8">Отрочество</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/13">12 лет рабства</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/18">Последний богатырь 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/13">12 лет рабства</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/7">Игра в имитацию</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/18">Последний богатырь 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/13">12 лет рабства</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/9">Филомена</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/15">Аквамен</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/12">Гонка</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/8">Отрочество</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/20">Скажене Весiлля 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/6">Охотник на лис</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/7">Игра в имитацию</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/21">Рассказ Служанки</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/13">12 лет рабства</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/11">Гравитация</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/19">Гарри Поттер и Дары Смерти</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/12">Гонка</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/6">Охотник на лис</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/21">Рассказ Служанки</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/22">Главный герой</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/4">Безумный Макс</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/20">Скажене Весiлля 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/6">Охотник на лис</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/9">Филомена</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/5">Выживший</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/20">Скажене Весiлля 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/21">Рассказ Служанки</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/7">Игра в имитацию</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/14">Хранитель времени</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/23">Во все тяжкиеё</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/23">Во все тяжкиеё</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/10">Капитан Филлипс</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/4">Безумный Макс</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/8">Отрочество</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/18">Последний богатырь 2</a>
AbrtNew
2 months
<a href="https://t.me/filmfilmfilmes/23">Во все тяжкиеё</a>
AbrtNew
2 months, 1 week
<a href="https://t.me/filmfilmfilmes/23">Во все тяжкиеё</a>
AbrtNew
2 months, 1 week
<a href="https://t.me/filmfilmfilmes/6">Охотник на лис</a>
AbrtNew
2 months, 1 week
<a href="https://t.me/filmfilmfilmes/10">Капитан Филлипс</a>
AbrtNew
2 months, 1 week
<a href="https://t.me/filmfilmfilmes/14">Хранитель времени</a>
AbrtNew
2 months, 1 week
<a href="https://t.me/filmfilmfilmes/2">Вечер с Владимиром Соловьевым</a>
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://t.me/holostyaktntofficial2022
AbrtNew
2 months, 1 week
https://bitbin.it/M6s1z3Ei/
AbrtNew
2 months, 1 week
https://bitbin.it/M6s1z3Ei/
AbrtNew
2 months, 1 week
https://bitbin.it/xUNGaaQL/
AbrtNew
2 months, 1 week
https://bitbin.it/xUNGaaQL/
AbrtNew
2 months, 1 week
https://bitbin.it/xUNGaaQL/
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bit.ly/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bitly.com/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bitly.com/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bitly.com/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bitly.com/legenda-destan-vse-serii
AbrtNew
2 months, 1 week
http://bitly.com/legenda-destan-vse-serii
AbrtNew
2 months, 2 weeks
Фільм Бетмен дивитись онлайн <a href="http://bitly.com/betmen-2022-film">Дивитися Бетмен</a> Дивитись фільм Бетмен
AbrtNew
2 months, 2 weeks
Бетмен фільм <a href="http://bitly.com/betmen-2022-film">Дивитися Бетмен</a> Бетмен дивитися онлайн
AbrtNew
2 months, 2 weeks
Дивитись онлайн Бетмен <a href="http://bitly.com/betmen-2022-film">Дивитися Бетмен</a> Бетмен 2022
AbrtNew
2 months, 2 weeks
Бетмен 2022 <a href="http://bitly.com/betmen-2022-film">Бетмен фільм</a> Дивитись онлайн Бетмен
AbrtNew
2 months, 2 weeks
Дивитись фільм Бетмен <a href="http://bitly.com/betmen-2022-film">Бетмен 1989 дивитися онлайн</a> Дивитися Бетмен
AbrtNew
2 months, 2 weeks
Дивитися Бетмен <a href="http://bitly.com/betmen-2022-film">Бетмен 2022</a> Дивитись онлайн Бетмен
AbrtNew
2 months, 2 weeks
Бетмен фільм <a href="http://bitly.com/betmen-2022-film">The Batman</a> Бетмен 2022
AbrtNew
2 months, 2 weeks
Бетмен онлайн <a href="http://bitly.com/betmen-2022-film">Бетмен фільм</a> Бетмен 2022
AbertNew
2 months, 2 weeks
скільки ще буде тривати війна в україні <a href="http://bitly.com/skilky-shche-bude-tryvaty-viyna-v-ukrayini">коли закінчиться війна в україні</a> скільки буде тривати війна в україні 2022