引言

Docker 是一个开源的应用容器引擎,可以让开发者打包他们的应用以及应用的依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。而 Django 是一个高级的 Python Web 框架,可以快速构建 Web 应用。本文将详细介绍如何在 CentOS 环境下使用 Docker 部署 Django 应用。

环境准备

安装 Docker

  1. 更新系统
    
    sudo yum update -y
    
  2. 安装 Docker
    
    sudo yum install -y docker-ce docker-ce-cli containerd.io
    
  3. 启动 Docker
    
    sudo systemctl start docker
    
  4. 设置 Docker 为开机启动
    
    sudo systemctl enable docker
    

安装 Python 和 Django

  1. 安装 Python
    
    sudo yum install -y python3 python3-pip
    
  2. 创建虚拟环境
    
    python3 -m venv myenv
    
  3. 激活虚拟环境
    
    source myenv/bin/activate
    
  4. 安装 Django
    
    pip install django
    

创建 Django 应用

  1. 创建 Django 项目
    
    django-admin startproject myproject
    
  2. 进入项目目录
    
    cd myproject
    
  3. 创建 Django 应用
    
    python manage.py startapp myapp
    
  4. 编写视图和 URL: 在 myapp/views.py 中编写视图函数,并在 myapp/urls.py 中配置 URL。

编写 Dockerfile

  1. 创建 Dockerfile
    
    FROM python:3.8
    WORKDIR /app
    COPY requirements.txt .
    RUN pip install -r requirements.txt
    COPY . .
    EXPOSE 8000
    CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
    
  2. 编写 requirements.txt
    
    Django==3.2
    

构建和运行 Docker 容器

  1. 构建 Docker 镜像
    
    docker build -t myproject .
    
  2. 运行 Docker 容器
    
    docker run -p 8000:8000 myproject
    

访问 Django 应用

  1. 打开浏览器,访问 http://localhost:8000

总结

通过以上步骤,您可以在 CentOS 环境下使用 Docker 部署 Django 应用。Docker 使得部署过程变得更加简单和高效,并且能够确保应用的一致性和可移植性。