Centos8.3UEFI版配置python3.9.4与django3.2虚拟环境maridb+nginx+uwsgi

第一步 安装python3.9.4

1。安装依赖

dnf groupinstall 'development tools’

dnf install bzip2-devel expat-devel gdbm-devel ncurses-devel openssl-devel readline-devel sqlite-devel tk-devel xz-devel zlib-devel wget

dnf install libffi-devel -y

2。下载

wget https://www.python.org/ftp/python/3.9.4/Python-3.9.4.tgz下载

3。 解压,运行不能带别的后缀

tar -zxvf Python-3.9.4.tgz && cd Python-3.9.4 && ./configure

4。 cd Python-3.9.4下(编译 && 安装)

make && make install

5。cd Python-3.9.4下安装完成就配置软连接

ln -s /usr/local/python3/bin/python3 /usr/bin/python3

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

python3 -V && pip3 -V 看到版本表示正常

pip3 install --upgrade pip 更新pip

第二步 虚拟环境

pip3 install pipenv(终端下安装)pip install --upgrade pip

mkdir py394 && cd py394 (退出目录创建,创建在root下)

pipenv install —three

pipenv shell 激活虚拟环境

python 查看版本

pipenv install django==3.2 (要等久一点,2分钟左右)

pipenv install pymysql pillow

pipenv --venv 查虚拟地址

第三步创建项目

pwd查当前路径是在root下就新建一个目录

mkdir projects && cd projects

这里不做详细介始

第四步. 安装 maridb(重启服务器后需要重启)

1。(终端下安装)

sudo dnf install mariadb-server

2。启动, 重启

sudo systemctl start mariadb(启动命令)重启服务器后一定要启动服务器

systemctl enable mariadb 设置为开机自启动服务

sudo systemctl restart mariadb(重启命令)

然后vim /etc/my.cnf

在[client-server] 下面加上要换行

[mysql]

skip-grant-tables

vi编辑器可以通过i、o、a等命令直接进入编辑模式,然后就可以修改文件了

按i 移动上下左右键到,你想插入的位置

打完字后,按ESC然后最下面输入:wq

就保存退出了。(可再用vim进去看是否添加成功,如操作不了关闭重新进入)

mysql_secure_installation首次安装需要配置密码

第一次没设密码直接回车,出现Set root password? [Y/n] 输入y设置密码

第二y 删除匿名用户,第三n 允许root用户远程登录

第四y 删除测试数据库并访问它,第五y 立即重新加载权限表

然后再vim /etc/my.cnf 删除刚才添加的

4. 设置外部ip可以访问 先进入mysql才能运行下面命令: 终端里输mysql 直接进入就行如设了密码mysql -u root -p输入密码

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION; 带;

Query OK, 0 rows affected (0.000 sec)出现表示成功

FLUSH PRIVILEGES(命令2刷新权限)出现->表示成功

第五步. 安装nginx (终端下安装)

sudo dnf install nginx (卸载dnf remove nginx)

sudo dnf install epel-release安装依赖

sudo /usr/sbin/nginx运行

http://你的ip/ 浏览器中打开看到欢迎页面表示成功

如果你在运行防火墙执行下面三步

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd —reload

可参考https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7

vi /etc/nginx/nginx.conf 把user nginx;改成user root;否则会出现加载不了静态文件,然后重启

vi编辑器可以通过i、o、a等命令直接进入编辑模式,然后就可以修改文件了

1. 将该配置文件加入到nginx的启动配置文件中

sudo ln -s /etc/nginx/conf.d/uc_nginx.conf /etc/nginx/conf.d/ (必需先创建然后ftp中删除)

新建uc_nginx.conf(这里不详细说明)先配置然后ftp上传到/etc/nginx/conf.d文件下

第六步. 安装uwsgi

第1次(终端下安装)pip3 install uwsgi

给uwsgi建立软链接,方便使用

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

uwsgi --version 查版本

uwsgi --python-version还可以间接查看到python的版本

第2次 必需 cd py394 && pipenv shell 虚拟环境下安装执行8000端口才能显示样式

pip3 install uwsgi 删除(pip3 uninstall uwsgi) 本地安装后,虚拟环境再安装一次

第七步 . 配置uwsgi 测试nginx

[uwsgi]

chdir = /root/projects/myapp

module = myapp.wsgi

master = true

processes = 10

socket = 127.0.0.1:8000

vacuum = true

用下面命令测试

cd py394 && pipenv shell

killall -9 uwsgi&&pkill -9 nginx&&sudo /usr/sbin/nginx&&cd&&cd projects/myapp&&uwsgi -i uwsgi.ini

http://你的ip看到欢迎页面说明成功Welcome to nginx on Fedora!

makemigrations然后migrate同步数据库创建数据库表

如果出现Internal Server Error(本地连接服务器虚拟环境查看依赖包是否安装好)

查看pipenv install mysqlclient如装不了,安装依赖

sudo dnf install python3-devel mysql-devel后再安装pipenv install mysqlclient

python -m pip install --upgrade pip 更新pip

你可能感兴趣的:(Centos8.3UEFI版配置python3.9.4与django3.2虚拟环境maridb+nginx+uwsgi)