L o a d i n g
Как быстро запустить проект Django с Docker: Полный список команд Linux Ubuntu

Привет, ребята!

Если вы хотите быстро развернуть новый проект Django с Docker, вот набор команд, которые вам помогут. Просто скопируйте и вставьте их в терминал, и у вас будет готовый проект.

# Создаем директорию для проекта и переходим в нее
mkdir my_django_project && cd my_django_project

# Создаем виртуальное окружение и активируем его (опционально)
python -m venv venv && source venv/bin/activate  # Для Windows используйте `venv\Scripts\activate`

# Устанавливаем Django и Gunicorn
pip install django gunicorn

# Создаем новый проект Django
django-admin startproject mysite .

# Создаем Dockerfile
cat <<EOF > Dockerfile
# Dockerfile
FROM python:3.11

# Устанавливаем рабочую директорию
WORKDIR /app

# Копируем файлы проекта
COPY requirements.txt /app/

# Устанавливаем зависимости
RUN pip install --no-cache-dir -r requirements.txt

# Копируем код проекта
COPY . /app/

# Команда для запуска сервера
CMD ["gunicorn", "mysite.wsgi:application", "--bind", "0.0.0.0:8000"]
EOF

# Создаем файл с зависимостями
cat <<EOF > requirements.txt
Django>=4.0,<5.0
gunicorn
EOF

# Создаем файл docker-compose.yml
cat <<EOF > docker-compose.yml
version: '3.8'

services:
  db:
    image: postgres:13
    volumes:
      - postgres_data:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: mydatabase
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword

  web:
    build: .
    command: ["gunicorn", "mysite.wsgi:application", "--bind", "0.0.0.0:8000"]
    volumes:
      - .:/app
    ports:
      - "8000:8000"
    depends_on:
      - db

volumes:
  postgres_data:
EOF

# (Опционально) Создаем файл .env
cat <<EOF > .env
POSTGRES_DB=mydatabase
POSTGRES_USER=myuser
POSTGRES_PASSWORD=mypassword
EOF

# Запускаем Docker-контейнеры
docker-compose up --build -d

# Ждем, пока контейнеры запустятся
sleep 10

# Выполняем миграции Django
docker-compose exec web python manage.py migrate

# Создаем суперпользователя Django
docker-compose exec web python manage.py createsuperuser

# Проверьте, что все работает, перейдите на http://localhost:8000

# Если нужно остановить контейнеры, используйте
# docker-compose down

Вот и всё! Если что-то не работает или возникнут вопросы, пишите. Удачи с проектом!

Написать комментарий

Вы можете оставить комментарий автору статьи Обязательные поля помечены *