# Django **Repository Path**: bingmp/django ## Basic Information - **Project Name**: Django - **Description**: Django learning - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-04-27 - **Last Updated**: 2024-05-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: Django ## README # Django 学习笔记 [Bili 视频 django 部分](https://www.bilibili.com/video/BV1rT4y1v7uQ/) 利用 docker 容器 - 环境 ubuntu:22.04; Python 3.10.12 - 虚拟环境 Python 3.10.12 - 数据库 mariadb - mysite → day15 - website → day16 ## 1、系统环境构建 ### 1.1 安装 ubuntu:22.04 ```sh # 创建网络 docker network create docker-network # ubuntu:22.04 镜像 docker pull ubuntu:22.04 # 安装、挂载 docker run -itd \ --restart=always \ --name ubuntu \ --network docker-network \ --network-alias ubuntu \ -v ./django:/root/django \ -p 8000:8000 \ -e TZ=Asia/Shanghai \ ubuntu:22.04 # docker stop ubuntu # docker rm ubuntu # 进入系统 docker exec -it ubuntu bash # 替换 /etc/apt/sources.list # 更改清华源 https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/ apt-get update apt-get upgrade ``` ### 1.2 安装 mysql-client ```sh # 安装 mysql 客户端 # 用于连接数据库 apt-get install mysql-client ``` ### 1.3 安装 vim (可选) ```sh # 安装 vim apt-get update apt-get upgrade apt-get install vim # 修改设置,解决中文乱码 vi /etc/vim/vimrc # 添加如下 set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 set termencoding=utf-8 set encoding=utf-8 ``` ## 2、虚拟环境构建 ```sh docker exec -it ubuntu bash # 安装python apt-get install python3 # 安装虚拟环境依赖 # python3 -V apt install python3.10-venv cd /root/ # 拉取 gitee 仓库项目 git clone https://gitee.com/bingmp/django.git # chmod -R 777 django/ cd django/ # pwd: /root/django/ # 创建虚拟环境 python -m venv django4 # 激活环境 linux source django4/bin/activate # 激活环境 windows # .\django4\Scripts\activate # 取消激活环境 deactivate # 设置 pip 清华源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple # 更新pip python -m pip install --upgrade pip ``` ## 3、数据库 ### 3.1 docker 安装 mariadb ```sh docker pull mariadb # 配置挂载内容 cd ~/ && mkdir mariadb && mkdir data && mkdir conf # 添加 my.cnf cd ~/mariadb/conf && vi my.cnf # 创建容器 docker run -d \ # 容器名 --name mariadb \ --restart=always \ # 加入 docker 网络 --network docker-network \ # 网络中的别名,同网络下连接时可用以代替 ip --network-alias mariadb \ # 挂载目录 -v ~/mariadb/data:/var/lib/mysql \ -v ~/mariadb/conf:/etc/mysql/ \ # 开放端口 -p 3306:3306 \ # 数据库 root 密码 -e MYSQL_ROOT_PASSWORD=pbm242813 \ # 设置时区 -e TZ=Asia/Shanghai \ # 镜像 mariadb ``` ### 3.2 创建 django4 ```sh docker exec -it ubuntu bash # 连接 mariadb 数据库 mysql -u root -h mariadb -p --default-character-set=utf8 # 查看其中的数据库 show databases; # 创建 django4 数据库 create database django4 DEFAULT CHARSET utf8 COLLATE utf8_general_ci; use django4; show tables; ``` ## 4、mysite - app15 → day15 ```sh docker exec -it ubuntu bash cd /root/django/mysite/ source ../django4/bin/activate # 安装依赖 pip install -r requirements.txt # # 迁移数据库 # python manage.py makemigrations # python manage.py migrate # 运行 python manage.py runserver 0.0.0.0:8000 # python manage.py runserver # # 创建依赖文件 # pip3 freeze > requirements.txt # 查看数据库 mysql -u root -h mariadb -p --default-character-set=utf8 use django4; show tables; desc app15_userinfo; select * from app15_userinfo; ``` ## 5、website - app16 → day16 ```sh docker exec -it ubuntu bash cd /root/django/mysite/ source /root/django/django4/bin/activate # # 迁移数据库 # python manage.py makemigrations # python manage.py migrate # 安装依赖 pip install -r requirements.txt python manage.py runserver 0.0.0.0:80 ```