为了Django教程搭建Docker环境

如果对于我第一次使用 Django 有任何指教,欢迎提出。

想做的事情

我想要做Django的教程
为了这个

    • Djangoの環境構築

 

    Dockerでの環境

为了管理依赖关系,我们将使用名为poetry的软件包管理工具来进行操作。从0开始。

最终构成

├── docker
│   ├── app
│       └── Dockerfile
├── docker-compose.yml
├── poetry.lock
├── pyproject.toml
└── src
    ├── manage.py
    └── mysite
        ├── __init__.py
        ├── asgi.py
        ├── settings.py
        ├── urls.py
        └── wsgi.py

创建Docker环境。

首先,将工作目录切换至…

创建docker/app/Dockerfile文件。

FROM python:3.11

ENV PYTHONUNBUFFERED 1

WORKDIR /workspace

# poetryインストール
RUN curl -sSL https://install.python-poetry.org | python3 -
RUN echo 'export PATH="/root/.local/bin:$PATH"' >> ~/.bashrc && . ~/.bashrc && poetry config virtualenvs.create false

ADD . /workspace/

设置Python环境并安装Python的包管理工具Poetry。通过设置PYTHONUNBUFFERED参数,禁用标准输出的缓冲,以实时在控制台输出。

接下来在工作目录下创建一个docker-compose.yml文件。

version: '3.8'

services:
  app:
    build: 
      context: ./docker/app
      dockerfile: Dockerfile
    volumes:
      - .:/workspace
    working_dir: /workspace/src
    ports:
      - 8000:8000
    tty: true

执行 docker-compose up -d,然后执行 docker-compose exec app bash 进入容器。

Django的安装

当你进入容器后,你会发现自己位于/workspace/src目录下,所以使用cd ..命令切换到上一级目录。

执行 poetry init

 poetry init

只需输入包名和作者的信息,然后按下回车即可完成。

This command will guide you through creating your pyproject.toml config.

Package name [workspace]: app
Version [0.1.0]:  
Description []:  
Author [None, n to skip]:  n
License []:  
Compatible Python versions [^3.11]:  

Would you like to define your main dependencies interactively? (yes/no) [yes] 
You can specify a package in the following forms:
  - A single name (requests): this will search for matches on PyPI
  - A name and a constraint (requests@^2.23.0)
  - A git url (git+https://github.com/python-poetry/poetry.git)
  - A git url with a revision (git+https://github.com/python-poetry/poetry.git#develop)
  - A file path (../my-package/my-package.whl)
  - A directory (../my-package/)
  - A url (https://example.com/packages/my-package-0.1.0.tar.gz)

Package to add or search for (leave blank to skip): 

Would you like to define your development dependencies interactively? (yes/no) [yes] 
Package to add or search for (leave blank to skip): 

然后安装Django

poetry add django

在这个时候,以下是构成的形式。

├── docker
│   └── app
│       └── Dockerfile
├── docker-compose.yml
├── poetry.lock
├── pyproject.toml
└── src

然后,使用以下命令来创建django项目。

django-admin startproject mysite ./src

请转到源文件并启动服务器。

cd src
python manage.py runserver 0:8000

当你访问localhost的8000端口并出现页面时,表示完成。

django.png
bannerAds