Как использовать Django/Nodejs с DDEV
Я много работаю с DDEV в своих PHP проектах и мне нравятся возможности, которые предлагает DDEV. Поскольку я также работаю с проектами Django и NodeJS, я хотел бы использовать их в сочетании с DDEV. Официально они пока не поддерживаются в текущей версии (1.18), но может быть кто-то уже нашел решение?
Для быстрого и грязного ответа по django я хотел бы познакомить вас с простым и, вероятно, неадекватным подходом, но он показывает, как легко добавить что-то вроде django. Мы просто будем использовать сервер django dev.
- Создайте каталог, я назвал свой
djиcd dj.
ddev config --auto- Добавьте к
.ddev/config.yaml:
webimage_extra_packages: [python3-django]
hooks:
post-start:
- exec: python3 manage.py runserver 0.0.0.0:8000
- Добавьте
.ddev/docker-compose.django.yaml:
version: "3.6"
services:
web:
expose:
- 8000
environment:
- HTTP_EXPOSE=80:8000
- HTTPS_EXPOSE=443:8000
healthcheck:
test: "true"
ddev startddev sshи создайте тривиальный проект django:django-admin startproject dj .- Добавьте в свой
dj/settings.pyALLOWED_HOSTS = ["dj.ddev.site"].
- Выйдите обратно на хост с помощью
ctrl-Dилиexitиddev start.
- Вы должны иметь доступ к тривиальному проекту по адресу
https://dj.ddev.site
Обратите внимание, что по ходу дела вы, вероятно, захотите в итоге запустить сервер django другим способом, или, что более вероятно, фактически запустить его с помощью сервера ddev-webserver nginx, что было бы более естественно (как в https://docs.nginx.com/nginx/admin-guide/web-server/app-gateway-uwsgi-django/). Но пока это простая демонстрация. Буду рад помочь вам в процессе работы.