Для запуска Django проекта и Redis в одном контейнере, вы можете использовать инструмент Docker Compose.
1. Создайте файл docker-compose.yml
в корневой директории проекта со следующим содержимым:
version: "3.8" services: web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: - .:/code ports: - 8000:8000 depends_on: - redis redis: image: redis:latest
2. В вашем проекте Django, убедитесь, что у вас есть файл requirements.txt
со всеми зависимостями проекта.
3. В папке с Dockerfile
создайте файл requirements.txt
и скопируйте содержимое из вашего проекта.
4. В папке с Dockerfile
создайте файл Dockerfile
со следующим содержимым:
FROM python:3.8 WORKDIR /code COPY requirements.txt . RUN pip install -r requirements.txt COPY . . CMD []
5. Теперь вы можете запустить контейнеры с помощью следующей команды:
docker-compose up
Это создаст и запустит контейнеры для Django проекта и Redis. Django будет доступен через порт 8000. Если вам нужен доступ к Redis, вы можете использовать имя контейнера redis
, чтобы установить подключение.
В этом примере используется базовый Dockerfile
для установки Python и копирования кода проекта в контейнер. Затем выполняется команда runserver
, чтобы запустить веб-сервер Django на порту 8000. Для Redis используется официальный образ Redis из Docker Hub.
Вы также можете настроить другие параметры в docker-compose.yml
файле согласно вашим потребностям, например настройки сети, переменных среды или других сервисов, которые требуются для вашего проекта Django.