从零开始搭建Django博客①--正式开始前的准备工作

本文主要在Ubuntu环境上搭建,为便于研究理解,采用SSH连接在虚拟机里的ubuntu-24.04.2-desktop系统搭建的可视化桌面,涉及一些文件操作部分便于通过桌面化进行理解,最后的目标是在本地搭建好系统后,迁移至云服务器并通过Nginx代理绑定域名,对外发布。

此为从零开始搭建Django博客系列的第一篇,计划用一周时间完成一个博客搭建并全程记录,便于学习和跟着操作。

从零开始搭建Django博客①--正式开始前的准备工作
从零开始搭建Django博客②--Django的服务器内容搭建

创建新用户

如果是新的系统或者云服务器,通常是以root用户登录。在 root 下部署代码不安全,最好是建一个新用户:

shell 复制代码
# 如果提示权限问题,可能因为并不是root用户登录,还需要新建用户的话,可以直接sudo命令
# sudo adduser xxx 添加新用户
adduser django 
# 把新用户添加到超级用户组
usermod -a -G sudo django
# 以下提示代表加入成功
# To run a command as administrator (user "root"), use "sudo <command>".
# 切换到新用户,需要输入密码
su django
# 查看权限,需要输入密码
django@主机名:/$ sudo whoami
# 显示root代表为超级用户

Python安装配置

检查Python安装情况

Ubuntu 通常预装了 Python 3,可以通过以下命令查看

shell 复制代码
python3 --version

由于本文目标是Django,有一个python版本就够用了,不需要多版本,如果没有直接通过以下命令安装。

shell 复制代码
sudo apt update
sudo apt install python3

安装 pip 和虚拟环境

接下来需要安装python的包管理工具和虚拟环境,虚拟环境主要用于隔离各项目,如果只想做一个项目可以不安装,建议安装配置。

shell 复制代码
# 安装pip
sudo apt install python3-pip
shell 复制代码
# 安装虚拟环境
sudo apt install python3-venv
# 创建项目目录
cd home
sudo mkdir myblog
# 创建虚拟环境blog
sudo python3 -m venv blog
# 激活环境
source blog/bin/activate
激活后,在命令前会出现(blog)指示
# 退出虚拟环境
deactivate

数据库安装配置(mysql)

虽然django目前已经可以使用nosql,但我们一般仍然使用mysql,毕竟SQL语句使用更为广泛。

shell 复制代码
sudo apt install mysql-server -y

启动并检查

shell 复制代码
# 启动
sudo systemctl start mysql
# 检查状态
sudo systemctl status mysql

安全配置向导(可选)

shell 复制代码
sudo mysql_secure_installation

会按顺序进行以下五个步骤

  1. 设置密码验证策略(推荐选择强密码模式)。

  2. 移除匿名用户。

  3. 禁止远程root登录。

  4. 删除测试数据库。

  5. 重新加载权限表。

登录数据库

shell 复制代码
# 初始使用sudo权限登录没有密码
sudo mysql -u root

# 退出数据库
mysql> \q

新建数据库

sql 复制代码
-- 创建数据库
CREATE DATABASE djange;
-- 显示当前数据库
SHOW DATABASES

(建议)创建用户并授权

尽量避免使用root账户直接管理所有数据库。

SQL 复制代码
-- 创建用户(将 username 和 password 替换为实际值)
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
-- 授予用户对新数据库的全部权限
GRANT ALL PRIVILEGES ON new_database.* TO 'username'@'localhost';
-- 刷新权限
FLUSH PRIVILEGES;
-- 退出数据库
\q

Django框架建设

目录权限分配

为了防止在项目构建时出现权限不足问题,这里我们将整个目录权限交给我们当前用户。

shell 复制代码
sudo chown -R 用户名:用户名 项目目录

项目构建

安装django

shell 复制代码
# 进入相应目录
cd /home/myblog
# 激活虚拟环境(blog为虚拟环境)
source blog/bin/activate
# 安装django,推荐从清华源,不然太慢
pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple

创建项目

运行以下命令创建一个名为 myblog 的项目:

python 复制代码
django-admin startproject myblog

在当前目录下会生成一个myblog的文件夹,就是我们的项目文件夹了

shell 复制代码
# 项目文件夹结构
├── manage.py
└── myblog
    ├── asgi.py
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

测试项目

进入项目根目录(有 manage.py 的目录),运行服务器:

python 复制代码
# 开启服务
python manage.py runserver

由于还没配置,会有报错,先不用理会。

访问http://localhost:8000,看到欢迎页面表示成功。

到此,一个django项目完成了全部启动前工作。

总结

本章主要是准备工作,Django项目的本地部署需要安装pythonmysql,并为python安装Django包,下一章将正式开始Django的操作部署。

相关推荐
basketball61642 分钟前
Python torchvision.transforms 下常用图像处理方法
开发语言·图像处理·python
兔子蟹子1 小时前
Java集合框架解析
java·windows·python
宁酱醇1 小时前
各种各样的bug合集
开发语言·笔记·python·gitlab·bug
谷晓光1 小时前
Python 中 `r` 前缀:字符串处理的“防转义利器”
开发语言·python
姚毛毛1 小时前
Windows上,10分钟构建一个本地知识库
python·ai·rag
站大爷IP1 小时前
Python ZIP文件操作全解析:从基础压缩到高级技巧
python
纪元A梦2 小时前
华为OD机试真题——通过软盘拷贝文件(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
java·javascript·c++·python·华为od·go·华为od机试题
用户867132495742 小时前
97% 的 Python 项目可以使用 partial() 更简洁
python
灏瀚星空2 小时前
从单机工具到协同平台:开源交互式模拟环境的技术演进之路
经验分享·笔记·python·开源·oneapi
西柚小萌新2 小时前
【Python爬虫实战篇】--Selenium爬取Mysteel数据
开发语言·爬虫·python