自己在云服务器搭了个小项目,把过程和踩的坑都记录下来。
操作系统:centOS 7
python版本:3.7.4
Django版本:2.2
mysql版本:5.7
还有:uwsgi + nginx
目录
一、服务器环境的搭建
(1)更新系统软件包
yum update -y
(2)安装软件管理包和可能使用到的依赖
上面那一步执行完了之后,接着按顺序执行以下命令
yum -y groupinstall "Development tools"
yum install yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
这一步完成之后,系统的配置就完了。接下来开始项目的搭建。
(3)安装python3
linux主要是用命令行操作的,常用的文件操作命令:
ls // 用于显示当前目录下的所有文件和文件夹
cd // 进入文件夹,如: cd /usr/home
// 特殊的: cd / 是回到根目录下, cd ../ 是返回上一层
mkdir + 文件名 // 创建文件夹, 如:mkdir test (命令和内容中间要加空格)
rm + 文件名或者文件夹名 // 删除文件或者文件夹
// 文件 rm -f /usr/local/log.txt -f是直接强行删除的意思
// 文件夹 rm -rf /usr/local/test -r是不管里面有多少级目录都删除
进入 local目录
cd /usr/local/
下载python3的安装包
wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz
完毕之后解压
tar -zxvf Python-3.7.4.tgz // 注意Python是大写开头
解压完成之后,在当前目录会生成对应的文件夹,可使用 ls 查看,然后进入到刚才解压的文件夹里
cd Python-3.7.4
编译到指定的路径(路径可自己指定,但是要记得)
./configure --prefix=/usr/local/python3 // 后面的路径自己一定要记得, 后面需要和这里保持一致
这里 ./configure --prefix的意思是将该软件安装在 /usr/local/python3 下面。
make 执行编译
make install 执行安装
make clean 清除产生的临时文件
ln 创建软连接,相当创建快捷命令,可以直接调用
然后按顺序执行命令安装python3,此时的还是在 Python-3.7.4的目录下进行的。
编译并安装
make && make install
完成之后,建立一下软链接,这里的/usr/local/python3/就是上面指定好的路径了。这样就可以在终端中使用python3命令啦!
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
完成之后,检查一下 pip3 是否安装完成,并且一定要检查版本,pip3的版本号要和你本地项目的pip3版本要一致,或者高于本地的版本。否则可能会导致它不能去下载一些你在使用的依赖包。可以使用 -V 去查看对应的程序版本号。
可以看到,python3 和 pip3 的版本号分别为:3.7.4 和 20.0.2 和我本地使用的是一样的。
注意一点:centOS系统是自带了python的,版本可以自己查看,千万不要把他卸了!第一次搭建的时候,我脑抽把python卸了,就因为它和我的python3我觉得会冲突,但没想到它是yum的依赖。
(4)安装 django
pip3 install django==2.2 // 指定django的2.2版本
安装完成之后,可以查看一下版本号是否正确
(5)安装 uwsgi 和 虚拟环境
1.安装 uwsgi
pip3 install uwsgi
// 完成后建立软链接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
接着,用cd命令返回到根目录下
创建两个新的文件夹,一个用于运行虚拟环境,一个用于存放自己的项目
mkdir -p /