将自己的django项目部署到云服务器(腾讯云centos)

最近自己买了个云服务玩,突然就想把自己写的小项目部署到云服务器上,这样就可以实现公网访问了。以下是整个部署过程和遇到的各种问题的解决方案,有想自己部署自己功能的,可以参考着进行哦。

1、设置好腾讯云的远程登录代码

先给你的云服务设置一个密码登录,方便用shh远程登录操作

2、拉取仓库中的代码

设置好后用shh工具远程登录后,创建一个文件夹存放你的django项目文件

mkdir /data
cd data
mkdir www
cd /data/www

安装git ,方便从gitee上拉取代码

yum install git -y

拉取代码

git clone https://gitee.com/... ... ---这个地方是自己的仓库地址

拉取的时候会需要输入gitee的账户和密码

拉取成功后,在www下面会增加代码的文件夹,这里的bom就是我的项目文件

当然,如果你的代码并没有托管到远程仓库上,一直在本地,你也可以使用shh的工具,将他们直接上传到服务器上,相关的工具很多,大家根据自己的习惯自己下载使用即可。最终的目的是实现将自己的代码上传到服务器上。

3、配置python环境

安装gcc

yum install gcc -y

安装python依赖

yum install zlib zlib-devel -y
yum install bzip2 bzip2-devel -y
yum install ncurses ncurses-devel -y
yum install readline readline-devel -y
yum install openssl openssl-devel -y
yum install xz lzma xz-devel -y
yum install sqlite sqlite-devel
yum install gdbm gdbm-devel -y
yum install tk tk-devel -y
yum install mysql-devel -y
yum install python-devel -y
yum install libffi-devel -y
yum install libffi libffi-devel -y 

下载wget

yum install wget -y

Python 安装包路径:(就是python官网上找自己需要的版本,最好不要找太新的,很多相应的服务器上的匹配都没有那么新,我用的是3.9,已经算很新啦)

https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz

wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz

解压&编译&安装

在压缩包所在的目录下,依次执行以下语句

tar -xvf Python-3.9.5.tgz 
cd Python-3.9.5/
./configure
make all
make install

4、安装虚拟环境

pip install virtualenv
virtualenv /envs/bom --python=python3.9

激活虚拟环境

source  /envs/bom/bin/activate

5、安装mysql

从mysql官网上下载仓库

wget  https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm

下载后可以查看是否下载成功

yum repolist|grep mysql

执行命令后能看到如下代码

(bom) [r data]# yum repolist|grep mysql
mysql-connectors-community/x86_64    MySQL Connectors Community              178
mysql-tools-community/x86_64         MySQL Tools Community                    85
mysql80-community/x86_64             MySQL 8.0 Community Server              395

默认安装的是mysql8.0的,我们需要安装mysql5.7版本的,这里需要我们修改配置

 vim /etc/yum.repos.d/mysql-community.repo

请参照截图修改

然后执行安装语句

 yum install mysql-community-server

设置mysql开机自启动

systemctl enable mysqld
systemctl start mysqld

查看一下是否启动成功

ps -aux|grep -v grep|grep mysql

查看mysql的版本

mysql --version

安装好后默认是不需要密码登录,这是因为在服务器上有特殊的账号配置

输入:

mysql -u root -p

回车不用输入密码即可登录

创建database

create database bom default charset utf8 collate utf8_general_ci;

创建账号admin,密码12345678

insert into mysql.user(user,host,password) values('admin','%',password('12345678'));

刷新权限

flush privileges;

授权各个ip均可访问(实际使用中要谨慎,一般都会设定固定的ip和对应操作权限,不会像自己学习的时候给这么大权限,设置完毕后要手动刷新)

grant all privileges on bom.* to admin@'%';
flush privileges;

这个时候如果用navicat去远程连接,基本上都是连不上的,这是因为防火墙的原因。你需要开通3306端口,如果你也是买的云服务器,你除了命令行操作以外,你还需要去服务器的安全组(或者防火墙上开通3306端口)

(bom) []# systemctl start firewalld.service
(bom) []# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
(bom) []# firewall-cmd --reload
success

这个时候你再用navicat等远程连接工具,就可以连接了。

6、更改django项目中的配置

根据你的数据库情况,设置setting中的配置

关闭DEBUG模式

DEBUG = False

添加对静态文件的配置

7、开发django应用的端口,运行程序

开放9999端口

firewall-cmd --zone=public --add-port=9999/tcp --permanent
firewall-cmd --reload

别忘了在腾讯云上开发端口

在manage.py所在的目录下执行

python manage.py runserver 0.0.0.0:9999

在服务器里输入公网ip,即可顺利访问

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/241079.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

yarn历史日志_配置文件

yarn历史日志yarn配置文件yarn执行任务 1.3. YARN的历史日志 1.3.1. 历史日志概述 我们在YARN运行MapReduce的程序的时候,任务会被分发到不同的节点,在不同的Container内去执行。如果一个程序执行结束后,我们想去查看这个程序的运行状态呢…

接口芯片选型分析 四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD

四通道差分驱动可满足ANSI TIA/EIA-422-B 和ITU V.11 的要求 低功耗,高速率,高ESD。 其中GC26L31S可替代AM26LS31/TI,GC26L32S替代AM26LS32/TI,GC26E31S替代TI的AM26LV31E

19.java绘图

A.Graphics类 Graphics类是java.awt包中的一个类,它用于在图形用户界面(GUI)或其他图形应用程序中进行绘制。该类通常与Component的paint方法一起使用,以在组件上进行绘制操作。 一些Graphics类的常见用法和方法: 在组…

天软基金经理因子定期报告(2023-12)

天软基金经理因子定期报告(2023-12)报告概要: 从投资业绩来看,葛兰长期业绩表现优于市场,任职以来年化收益率为12.714%,最大回撤为-53.460%。 从投资能力来看,其选股能力与收益择时能力较为突出…

发布 Whatsonchain 上的 BSV20 插件

我们发布了 whatsonchain 上的 BSV20 插件来验证 BSV20 代币。 对于任何交易,whatsonchain 都可以通过以下网址打开: https://whatsonchain.com/tx/{hash}我们使用此 bsv20 v21 交易 打开 Whatsonchain 。 打开whatsonchain后你会看到BSV20插件&#x…

阿里云国际跨境直播解决方案,视频AI创新营销模式丰富直播场景

据第三方咨询公司iiMedia Research预测,2017-2020年,视频直播行业一直处于高速发展阶段。2020年,视频直播行业市场收入超1万亿元,累计覆盖用户5.26亿。 视频直播的应用范围已从视频娱乐、电子商务等泛互联网行业扩展到在线教育、…

python算法例17 下一个稀疏数

1. 问题描述 如果一个数是稀疏数,则它的二进制表示中没有相邻的1,例如5(二进制表示为101)是稀疏数,但是6(二进制表示为110)不是稀疏数,本例将给出一个n,找出大于或等于n…

Backtrader 文档学习-Quickstart

Backtrader 文档学习-Quickstart 0. 前言 backtrader,功能十分完善,有完整的使用文档,安装相对简单(直接pip安装即可)。 优点是运行速度快,支持pandas的矢量运算;支持参数自动寻优运算&#x…

软件测试基础知识+面试总结(超详细整理)

一、什么是软件? 软件是计算机系统中的程序和相关文件或文档的总称。 二、什么是软件测试? 说法一:使用人工或自动的手段来运行或测量软件系统的过程,以检验软件系统是否满足规定的要求,并找出与预期结果之间的差异…

yaml 文件格式

yaml文件:是一种标记语言,以竖列形式展示序列化的时间格式,可读性高 类似于json格式。语法简单。 yaml通过缩进来表示数据结构,连续的项目用-减号来表示。 yaml文件使用的注意事项: 1,大小写敏感 2&am…

深度学习环境配置------windows系统(GPU)------Pytorch

深度学习环境配置------windows系统(GPU)------Pytorch 准备工作明确操作系统明确显卡系列 CUDA和Cudnn下载与安装1.下载2.安装 环境配置过程1.安装Anacoda2.配置环境1)创建一个新的虚拟环境2)pytorch相关库的安装 2.安装VScode1&…

​Linux系列之yum安装​

yum是Linux系统的安装必备神器,简直不要太方便。但是新系统一般是不自带yum工具的,所以需要手动安装一下。 环境:Ubuntu sudo apt-get install yumsudo apt-get install rpm 环境:centos7 新建一个目录用来保存yum安装包 mk…

redis-学习笔记(Jedis 前置知识)

自定义的 Redis 客户端 咱们可以实现编写出一个自定义的 Redis 客户端 因为 Redis 公开了自己使用的自定义协议 ---- RESP 协议清楚了, 那么通信数据格式就清除了, 就能完成各层次之间的数据传输, 就能开发服务器和客户端 RESP — Redis 的 序列化 协议 特点: 简单好实现快读进…

HarmonyOS给应用添加弹窗

给您的应用添加弹窗 概述 在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作,如下图所示: 弹窗是一种模态窗口,通常用来展示用户…

安装odoo17 Windows版时,PostgreSQL Database无法被勾选

安装odoo17 Windows版时,PostgreSQL Database无法被勾选。 出现的原因是,曾经安装过PostgreSQL Database;虽然可能已被卸载,但注册表内还有残余信息,导致odoo认为PostgreSQL Database仍存在于系统之中。 解决方案 删…

MySQL笔记-第10章_创建和管理表

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第10章_创建和管理表1. 基础知识1.1 一条数据存储的过程1.2 标识符命名规则1.3 MySQL中的数据类型 2. 创建和管理数据库2.1 创建数据库2.2 使…

用友系列之YonBuilder低代码平台概论和基本使用

文章目录 前言一、低代码平台是什么?二、用友的YonBuilder应用构建平台2.1.YonBuilder应用构建平台2.2.丰富的组件库和可视化设计器2.3.完善的应用全生命周期管理2.4.完善的学习社区 三、用友的YonBuilder应用构建平台实战3.1. 注册账号、登录3.2.进入开发者中心工作…

Fluter工具安装与环境搭建

1、下载 Flutter SDK,下载完成后,在需要放置SDK的地方解压即可。 注意: 请勿将 Flutter 有特殊字符或空格的路径下。请勿将 Flutter 安装在需要高权限的文件夹内,例如 C:\Program Files\。 2、配置环境变量 例如: …

MySQL笔记-第07章_单行函数

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第07章_单行函数1. 函数的理解1.1 什么是函数1.2 不同DBMS函数的差异1.3 MySQL的内置函数及分类 2. 数值函数2.1 基本函数2.2 角度与弧度互换…

vue3若依框架,在页面中点击新增按钮跳转到新的页面,不是弹框,如何实现

在router文件中的动态路由数组中新增一个路由配置,这个配置的就是新的页面。 注意path不要和菜单配置中的路径一样,会不显示内容。 在菜单配置中要写权限标识就是permissions:[]里的内容 在children里的path要写占位符info/:data 点击新增按钮&#x…