Centos7 部署 pycharm 创建的 Djiango 项目

环境是本地的虚拟机,自己环境上部署时遇见了一些问题解决后,就写个稍微流畅点的自己可以看看,算是总结笔记吧

跟着这个大佬的文档部署的:

Centos7上使用Nginx部署Django Vue 前后端分离项目_放开这小书包-CSDN博客

自己的环境信息:

        centos:7.9

        python:3.12.1

        django:5.0.2

        mysql:5.7

(尽量不要用 mariadb,不然后面安装 mysqlclient 会有问题,不过有大佬解决了)

Centos操作系统新安装的Python3中安装mysqlclient库_specify mysqlclient_cflags and mysqlclient_ldflags-CSDN博客

一、python 环境所需依赖安装

        1.1、更新系统软件并安装相关依赖

yum update
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel wget gcc make

 
## 安装 mysqlclient 所需的依赖
### 这里我 django orm 连接的是 mysql 数据库,所以需要用到 mysqlclient
yum install python3-devel mysql-devel

        1.2、更新 openssl 

centos默认带的openssl版本太低,要升级openssl版本

不然后面安装会报错:"Can't connect to HTTPS URL because the SSL module is not available"

openssl  下载地址:[ Old Releases ] - /source/old/index.html

解决问题来源:Centos 上python3 pip3安装报错:WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. - 西夏一品唐 - 博客园 (cnblogs.com)

1.2.1、下载

wget https://www.openssl.org/source/old/1.1.1/openssl-1.1.1w.tar.gz

1.2.2、解压

tar xzf openssl-1.1.1w.tar.gz

1.2.3、编译安装

cd openssl-1.1.1w

./config --prefix=/usr/local/openssl

make && make install

1.2.4、备份旧的openssl

mv /usr/bin/openssl{,.back}
mv /usr/include/openssl{,.back}

1.2.5、配置新的openssl

cd /usr/local/openssl
ln -s `pwd`/include/openssl/ /usr/include/openssl
ln -s `pwd`/lib/libssl.so.1.1 /usr/local/lib64/libssl.so
ln -s `pwd`/bin/openssl /usr/bin/openssl

1.2.6、修改系统配置

echo "/usr/local/openssl/lib" >> /etc/ld.so.conf

1.2.7、使用新配置立即生效

openssl version

二、Python 环境安装配置

        2.1、下载编译安装

2.1.1、下载源码包

        ## 官网的,很慢,等了一会才下好

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

2.1.2、解压缩

tar xzf Python-3.12.1.tgz

2.1.3、配置安装路径和指定依赖

cd Python-3.12.1
./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl

2.1.4、编译安装

make && make install

        2.2、配置环境

2.2.1、设置软连接(或者直接将 /usr/local/python3/bin/ 加入 PATH 环境变量

## 删除因之前安装python3-devel时自动做的软连接
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3


## 用自己的新版本来做
cd /usr/local/python3/bin/
ln -s `pwd`/python3.12 /usr/bin/python3
ln -s `pwd`/pip3.12 /usr/bin/pip3

## 查看版本信息
python3 -V
pip --version

2.2.2、配置 PyPI 国内镜像源(这样 pip 安装时就会快点

### 国内一些镜像源的地址

1. 清华大学镜像站:https://pypi.tuna.tsinghua.edu.cn/simple/
2. 阿里云镜像站:https://mirrors.aliyun.com/pypi/simple/
3. 中科大镜像站:https://pypi.mirrors.ustc.edu.cn/simple/
4. 中国科技大学镜像站:https://pypi.mirrors.ustc.edu.cn/simple/
5. 中国科学技术大学镜像站:https://pypi.mirrors.ustc.edu.cn/simple/
6. 华中科技大学镜像站:https://pypi.hustunique.com/
7. 豆瓣:https://pypi.douban.com/simple/


## 在用户根目录下新建 .pip/pip.conf 文件,并写入
mkdir ~/.pip
vim ~/.pip/pip.conf

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn

        2.3、虚拟环境安装配置

 2.3.1、虚拟环境安装

# 安装虚拟环境
pip3 install virtualenv

# 安装虚拟环境扩展包
pip3 install virtualenvwrapper

# 新建一个文件夹用来保存虚拟环境
mkdir ~/.virtualenv

# 建立软连接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv

2.3.2、配置虚拟环境

vim ~/.bashrc 

# WORKON_HOME:定义 mkvirtualenv 新建虚拟环境的默认路径
export WORKON_HOME=~/.virtualenv
# 指定 python 解释器
export VIRTUALENVWRAPPER_PYTHON=/usr/local/python3/bin/python3
# 加载 virtualenvwrapper
source ~/Python/python3.8.10/bin/virtualenvwrapper.sh
# 刷新
source ~/.bashrc

2.3.3、virtualenv 虚拟环境常用命令

查看当前有哪些虚拟环境:workon

创建虚拟环境:virtualenv 环境名称
指定python解释器创建虚拟环境:virtualenv -p /usr/bin/python3.8 环境名称

激活虚拟环境:
    cd 环境目录/bin
    source activate


进入\切换 虚拟环境: workon  环境名称
进入虚拟环境(需要先进入到虚拟环境所在的目录):cdvirtualenv

退出当前虚拟环境:deactivate

删除虚拟环境:rmvirtualenv  环境名称

三、安装 mysql

参考:Centos7 环境安装 mysql5.7-CSDN博客

3.1、创建项目所需的数据库

 mysql> create  database  staff_manage default  charset  utf8  collate  utf8_general_ci;

四、Django 项目配置部署

        4.1、上传项目

4.1.1、上传项目

## 我这里因为是本地的环境,就用的 xftp 把包整体移过来的

也有其他方法:

        将文件使用 git 上传 GitHub,或者码云等平台,再在服务器中下载;使用 Xftp 等三方工具将文件直接上传到服务器;使用 Pycharm 上传代码

        4.2、新建并配置虚拟环境

4.2.1、新建虚拟环境

# staffmanage 是写自己的环境名
mkvirtualenv staffmanage

# 将上传的项目文件移到虚拟环境中(也可以不用移到虚拟环境的目录下
cp -r staffmanage/* ~/.virtualenv/staffmanage/

4.2.2、安装需要的库

# res.txt 里是自己需要的库名
django==5.0.2
requests
mysqlclient

# 进入虚拟环境
workon staffmanage

# 进入当前环境目录
cdvirtualenv

# 批量安装
pip install -r res.txt

        4.3、修改项目设置

## 根据自己情况修改

4.3.1、因为这里用的 mysql5.7,迁移表时会报错,需要修改源码

"django.db.utils.NotSupportedError: MySQL 8.0.11 or later is required (found 5.7.44)"

# 根据报错信息,进入对应文件,找到 self.check_database_version_supported() 并注释掉

vim /root/.virtualenv/staffmanage/lib/python3.12/site-packages/django/db/backends/base/base.py

4.3.2、修改项目 settings.py 设置

# 可以让任何 IP 访问
ALLOWED_HOSTS = ['*']

4.4、迁移项目需要的表到数据库

(staffmanage) [root@master staffmanage]# python3 manage.py makemigrations
(staffmanage) [root@master staffmanage]# python3 manage.py migrate

五、项目运行

# 直接启动服务,访问服务接口,测试能否正常访问

(staffmanage) [root@master staffmanage]# python3 manage.py runserver 0.0.0.0:8000

没问题了  T-T,over

还有 uwsg、nginx 等后面搞好再补充

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在CentOS 7上安装PyCharm,您可以按照以下步骤进行操作: 1. 安装Java环境:由于PyCharm是用Java编写的,所以您需要安装Java环境。如果您的系统没有安装Java,请使用以下命令安装OpenJDK: ``` sudo yum install java-1.8.0-openjdk ``` 2. 下载PyCharm:在您的CentOS 7系统上,通过访问JetBrains官方网站 (https://www.jetbrains.com/pycharm/download) 下载PyCharm的最新版本 (Community或Professional Edition)。 3. 解压和安装PyCharm:将下载的PyCharm压缩包解压到您选择的目录中。您可以使用以下命令解压文件: ``` tar -xvf pycharm-*.tar.gz ``` 4. 启动PyCharm:进入解压的目录,找到bin文件夹,并运行pycharm.sh脚本来启动PyCharm: ``` cd pycharm-*/bin ./pycharm.sh ``` 5. 配置Python解释器:在PyCharm中,点击"File" -> "Settings"打开设置窗口。在左侧面板中选择"Project Interpreter",然后点击右侧的齿轮图标,选择"Add"。在弹出的窗口中,选择您已经安装的Python解释器,并点击"OK"。 6. 配置PyCharm使用阿里云的安装源:在设置窗口中,选择"Appearance & Behavior" -> "System Settings" -> "HTTP Proxy"。勾选"Auto-detect proxy settings",然后选择"Manual proxy configuration",在"Host"和"Port"字段中输入阿里云的安装源地址和端口。 完成以上步骤后,您就成功在CentOS 7上安装了PyCharm,并配置好了Python解释器和安装源。现在您可以开始使用PyCharm进行Python开发了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux centos7pycharm的安装教程](https://blog.csdn.net/alwaysbefine/article/details/109705574)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值