0Pricing
Django Academy · Урок

docker-compose с Postgres и Redis

Запускайте весь стек одной командой

«docker-compose с Postgres и Redis» — бесплатный урок Django Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Django Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Django Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

One Command, Whole Stack

docker-compose defines many containers in one file, so Django, Postgres, and Redis start together with a single command. 🧩

The compose File

Everything lives in docker-compose.yml, where each container you need becomes an entry under the services key.

services:
  web:
  db:
  redis:

The web Service

Your web service builds from your Dockerfile and runs Django, the heart of the whole stack.

web:
  build: .
  command: gunicorn config.wsgi:application --bind 0.0.0.0:8000

Add Postgres

The db service uses the official Postgres image, giving you a real database without installing anything locally.

db:
  image: postgres:16

Add Redis

The redis service runs the official Redis image, ready to act as a cache or a Celery message broker.

redis:
  image: redis:7

Connect by Service Name

Compose gives each service a DNS name, so Django reaches Postgres at the host db, not localhost.

DATABASE_URL=postgres://user:pass@db:5432/app

Wait with depends_on

Use depends_on so web starts after db and redis, keeping your startup order sane.

web:
  depends_on:
    - db
    - redis

Persist Data with Volumes

A named volume stores Postgres data outside the container, so your rows survive restarts and rebuilds.

db:
  volumes:
    - pgdata:/var/lib/postgresql/data

Pass Configuration as Env

Feed secrets and settings through environment or an env_file, keeping config out of your image.

db:
  environment:
    POSTGRES_DB: app
    POSTGRES_PASSWORD: pass

Map Ports to Your Host

The ports key forwards a container port to your machine, so you can open the app in a browser.

web:
  ports:
    - "8000:8000"

Bring It All Up

Run docker compose up and the entire stack boots together; add -d to run it in the background.

docker compose up -d

Quick Check

How does your web container reach the database in Compose?

Recap

You wired a full stack in docker-compose: web, db, and redis services, connected by name, with volumes for data and one command to launch. 🚀

Часто задаваемые вопросы

Урок «docker-compose с Postgres и Redis» бесплатный?

Да — полный текст урока «docker-compose с Postgres и Redis» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Django Academy, подпишись на CoddyKit PRO. Курс Django Academy содержит 4 уроков всего.

Чему я научусь в уроке «docker-compose с Postgres и Redis»?

Запускайте весь стек одной командой Ты практикуешь Django Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Django Academy?

Предыдущий опыт не требуется. Django Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «docker-compose с Postgres и Redis»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Django Academy?

Да. Каждый урок Django Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Написание Dockerfile для Django
  2. docker-compose с Postgres и Redis
  3. Точки входа, миграции и collectstatic
  4. Рекомендации для образов рабочего окружения
← Назад к Django Academy