0

0

drf项目部署到腾讯云

看不見的法師

看不見的法師

发布时间:2025-09-01 09:20:02

|

406人浏览过

|

来源于php中文网

原创

在成功购买php中文网服务器后,您将通过站内信收到系统的登录信息,包括用户名“ubuntu”和初始登录密码。

本地所需的软件工具

  1. Xshell:用于远程操作服务器实例。打开Xshell软件,选择【文件】→【新建】→【新建会话】,输入云服务器的公网IP,用户名“ubuntu”,并使用初始登录密码进行连接。

为了方便安装包,您需要从“ubuntu”用户切换到“root”用户:

sudo -i

drf项目部署到腾讯云

  1. FileZilla:用于将打包成zip格式的项目文件上传到云服务器的/home/ubuntu目录下。

  2. Navicat for MySQL:用于同步本地和服务器的数据库。

本地项目准备

  1. Django项目

    1. settings.py配置

      • 配置公网IP以允许访问:

        ALLOWED_HOSTS = ['公网ip']
      • 添加静态文件路径配置:

        STATIC_ROOT=os.path.join(BASE_DIR,'static')
        STATICFILES_DIR=[os.path.join(BASE_DIR,'static'),] #这一条在开发阶段就可以添加
      • 关闭开发调试模式:

        DEBUG = False
    2. 生成requirements.txt

      pip freeze >requirements.txt
    3. 将chaoyuecun项目打包成zip包

  2. 同步数据库

    1. 在云服务器安装MySQL数据库

      • 安装MySQL 5.7(当前默认安装的MySQL版本为5.7):

        apt-get install mysql-server
        #设置数据库密码,与本地数据库密码相同,避免在项目settings中进行修改
        apt-get install mysql-client
        apt-get install libmysqlclient-dev
      • 修改服务器数据库配置文件以允许远程连接:

        vim /etc/mysql/mysql.conf.d/mysqld.cnf
        # 英文输入环境下,按i键进入插入模式
        # 移动光标,注释掉 bind-address = 127.0.0.1
        # 英文输入环境下,按Esc键,输入:wq 保存并退出
      • 设置远程连接密码:

        mysql -u root -p
        #输入密码(不显示),登录MySQL
        GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
        flush privileges;
        quit;
        #重启MySQL服务
        /etc/init.d/mysql restart
    2. 使用Navicat将本地数据库传输到PHP中文网服务器

      • 建立连接:

        • 连接本地:点击左上角控制面板的【连接】→选择【MySQL】→输入连接名称,测试连接,确认连接成功。

        • 连接服务器:点击左上角控制面板的【连接】→选择【MySQL】→输入连接名称,输入云服务器的公网IP,用户名“root”,密码“123456”,测试连接,确认连接成功。

      • 传输数据:

        drf项目部署到腾讯云

        选择本地要传输到服务器的数据库,选择数据库连接,点击开始,确认,然后等待传输完成并关闭。

      • 查看是否上传成功:

        mysql -u root -p
        #输入密码
        show databases;
        #查看本地数据库是否已上传
        quit;
      • 修改服务器数据库配置文件,使之不允许远程连接:

        vim /etc/mysql/mysql.conf.d/mysqld.cnf
        # 英文输入环境下,按i键进入插入模式
        # 移动光标,恢复注释掉的 bind-address = 127.0.0.1
        # 英文输入环境下,按Esc键,输入:wq 保存并退出
        #重启MySQL服务
        /etc/init.d/mysql restart
  3. 上传项目并运行

    1. 安装Python 3.6

      由于PHP中文网的Ubuntu 16.04默认安装的Python版本是2.7和3.5,而本地开发使用的是Python 3.6,因此需要下载并安装Python 3.6。

      • 安装相关依赖,防止因缺少依赖而报错:

        apt-get install openssl
        apt-get install libssl-dev
        apt-get install libc6-dev gcc
        apt-get install -y make build-essential zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm tk-dev
      • 安装Python 3.6:

        Tellers AI
        Tellers AI

        Tellers是一款自动视频编辑工具,可以将文本、文章或故事转换为视频。

        下载
        add-apt-repository ppa:jonathonf/python-3.6
        #回车
        apt-get update
        apt-get install python3.6
      • 将默认的Python链接指向Python 3.6:

        cd /usr/bin
        rm python
        ln -s python3.6 /usr/bin/python
        python -V

        drf项目部署到腾讯云

    2. 项目上传

      • 使用FileZilla上传项目的zip包到ubuntu目录下:

        drf项目部署到腾讯云

      • 解压:

        cd /home/ubuntu
        ls
        unzip gg.zip
    3. 配置虚拟环境

      • 创建虚拟环境:

        #安装虚拟环境
        apt-get install python3-venv
        #在当前目录下,创建一个Python 3.6的虚拟环境,取名为env36
        python3 -m venv env36
        . env36/bin/activate
        #进入虚拟环境
        #退出虚拟环境 deactivate
      • 在虚拟环境中安装依赖库:

        cd gg
        pip3 install -r requirements.txt

        drf项目部署到腾讯云

    4. 测试运行项目

      • 运行项目:

        python manage.py runserver 0.0.0.0:8000
      • 在安全组中打开8000端口。

      • 浏览器访问:

        http://公网ip:8000/xadmin/
      • 退出运行状态:

        Ctrl键+C键
  4. 安装和配置uWSGI

    1. 安装uWSGI到真实(非虚拟环境)环境下

      #退出虚拟环境
      deactivate
      cd ..
      apt install python3-pip
      pip3 install uwsgi
    2. 使用uWSGI启动项目

      • 运行项目:

        uwsgi --chdir /home/ubuntu/gg --home /home/ubuntu/env36 --http :8000 --module gg.wsgi
      • 浏览器访问:

        http://公网ip:8000/xadmin/
      • 退出运行状态:

        Ctrl键+C键
    3. 配置uWSGI

      • 创建ini文件:

        mkdir gg_uwsgi #创建一个目录,专门存放uWSGI的相关文件
        cd gg_uwsgi/
        vim gg.ini #创建一个ini文件
      • 编辑ini文件进入编辑模式:

        i #进入编辑模式

        输入内容:

        [uwsgi]
        chdir = /home/ubuntu/gg
        home = /home/ubuntu/env36
        module = gg.wsgi:application
        master = True
        processes = 4
        harakiri = 60
        max-requests = 5000
        socket = 127.0.0.1:8000
        uid = 1000
        gid = 2000
        pidfile = /home/ubuntu/gg_uwsgi/master.pid
        daemonize = /home/ubuntu/gg_uwsgi/gg.log
        vacuum = True

        保存退出:

        Esc键+输入:wq+回车 #保存并退出
    4. 通过ini启动uWSGI

      • 执行通过ini启动项目命令:

        uwsgi --ini /home/ubuntu/gg_uwsgi/gg.ini
      • 执行检验是否启动了多线程:

        ps -aux | grep uwsgi

        drf项目部署到腾讯云

      • 重启和停止uWSGI:

        uwsgi --reload /home/chaoyuecun_uwsgi/master.pid #重启
        uwsgi --stop /home/chaoyuecun_uwsgi/master.pid #停止

相关专题

更多
python开发工具
python开发工具

php中文网为大家提供各种python开发工具,好的开发工具,可帮助开发者攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。php中文网还为大家带来python相关课程以及相关文章等内容,供大家免费下载使用。

760

2023.06.15

python打包成可执行文件
python打包成可执行文件

本专题为大家带来python打包成可执行文件相关的文章,大家可以免费的下载体验。

639

2023.07.20

python能做什么
python能做什么

python能做的有:可用于开发基于控制台的应用程序、多媒体部分开发、用于开发基于Web的应用程序、使用python处理数据、系统编程等等。本专题为大家提供python相关的各种文章、以及下载和课程。

762

2023.07.25

format在python中的用法
format在python中的用法

Python中的format是一种字符串格式化方法,用于将变量或值插入到字符串中的占位符位置。通过format方法,我们可以动态地构建字符串,使其包含不同值。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

618

2023.07.31

python教程
python教程

Python已成为一门网红语言,即使是在非编程开发者当中,也掀起了一股学习的热潮。本专题为大家带来python教程的相关文章,大家可以免费体验学习。

1265

2023.08.03

python环境变量的配置
python环境变量的配置

Python是一种流行的编程语言,被广泛用于软件开发、数据分析和科学计算等领域。在安装Python之后,我们需要配置环境变量,以便在任何位置都能够访问Python的可执行文件。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

549

2023.08.04

python eval
python eval

eval函数是Python中一个非常强大的函数,它可以将字符串作为Python代码进行执行,实现动态编程的效果。然而,由于其潜在的安全风险和性能问题,需要谨慎使用。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

579

2023.08.04

scratch和python区别
scratch和python区别

scratch和python的区别:1、scratch是一种专为初学者设计的图形化编程语言,python是一种文本编程语言;2、scratch使用的是基于积木的编程语法,python采用更加传统的文本编程语法等等。本专题为大家提供scratch和python相关的文章、下载、课程内容,供大家免费下载体验。

709

2023.08.11

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Node.js 教程
Node.js 教程

共57课时 | 8.8万人学习

ASP 教程
ASP 教程

共34课时 | 3.7万人学习

Python 教程
Python 教程

共137课时 | 7.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号