部署 Django 和 Vue 项目到 CentOS 服务器
准备工作-将代码提交到 GitHub
1、将代码提交到 GitHub
sudo yum install git
2、配置 Git(设置用户名和邮箱)
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
3、创建 GitHub 仓库:
-
登录 GitHub。
-
点击右上角的 + 号,选择 New repository。
-
填写仓库名和描述,选择 Public 或 Private,点击 Create repository。
4、初始化 Git 仓库(在本地项目目录中):
cd /path/to/your/project
git init
5、添加远程仓库:
git remote add origin https://github.com/你的用户名/你的仓库名.git
6、添加文件并提交:
git add .
git commit -m "Initial commit"
7、推送到 GitHub:
git push -u origin master
部署 Django 和 Vue 项目到 CentOS 服务器:
1. 准备服务器
- 更新系统:
sudo yum update -y
- 安装必备软件:
sudo yum install -y git curl wget
2.部署 Django 应用
- 安装 Python 及相关工具:
sudo yum install -y python3 python3-pip python3-devel
sudo pip3 install virtualenv
- 克隆代码仓库:
git clone https://github.com/你的用户名/你的仓库名.git
cd 你的仓库名
- 创建虚拟环境并激活:
virtualenv venv
source venv/bin/activate
- 安装依赖:
pip install -r requirements.txt
- 运行数据库迁移:
python manage.py migrate
注:
sudo killall uwsgi
uwsgi --ini uwsgi.ini
nohup uwsgi --ini uwsgi.ini > uwsgi.log &
ps aux | grep uwsgi
tail -f uwsgi.log
部署 Vue 应用
1.安装 Node.js 和 npm:
curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
2. 安装 Vue CLI(如果还没有安装):
sudo npm install -g @vue/cli
3.克隆代码仓库:
git clone https://github.com/你的用户名/你的Vue仓库名.git
cd 你的Vue仓库名
4.安装依赖:
npm install
5.构建项目:
npm run build
6.部署构建后的文件:
-
将 dist 目录中的文件复制到你的 Web 服务器(如 Nginx)的根目录。 4. 配置 Nginx
-
安装 Nginx:
sudo yum install -y epel-release
sudo yum install -y nginx
- 配置 Nginx:
编辑 /etc/nginx/nginx.conf 或者在 /etc/nginx/conf.d/ 中创建一个新的配置文件(如 your_project.conf)。
server {
listen 80;
server_name your_domain_or_IP;
location / {
root /path/to/your/vue_project/dist;
try_files $uri $uri/ /index.html;
}
location /api/ {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
- 启动并启用 Nginx:
sudo systemctl start nginx
sudo systemctl enable nginx
至此,你已经完成了将 Django 和 Vue 项目部署到 CentOS 服务器的步骤。如果你需要使用 HTTPS,可以使用 Certbot 来获取免费的 SSL 证书并配置 Nginx。