title: 部署服务器(二)
date: 2021-03-20 14:02:23
tags:
引言
记录当时的才是最有意义的。现在过了一个月环境已经全部部署完毕了。有很多截图当时都没有截图保存下来,没有能达到最完美的记录。所以服务器部分就不会再记录下去了。前天我记录了我是如何购买以及登录服务器的,今天我想再接着记录一下我是怎么部署nginx,以及简单的记录一下我安装php、mysql、flask和tensorflow的一些感受。
一、 部署nginx
1.1 nginx是什么?
首先反向代理服务器是指在用户与目标服务器之间的服务器。但对于用户而言,反向代理服务器即为目标服务器。用户直接访问反向代理服务器就可以获得目标服务器的资源。而nginx是一个轻量级、高性能的HTTP和反向代理web服务器,同时提供IMAP/POP3/SMTP服务,特点是占有内存小,并发能力强。
1.2 安装nginx之前的预安装
若和我一样是刚刚购买服务器的胖友,在安装nginx之前需要安装一下几个软件包:
1、gcc
2、pcre
3、zlib
4、OpenSSL
因为为了nginx源码,我们需要标准的GCC编译器,除此以外,Nginx的一些模块还需要依赖其他第三方库,通常有pcre库(支持rewrite模块)、zlib库(支持gzip模块)和openssl库(支持ssl模块)。
sudo apt-get install <软件包名>
如果你和我一样是一个很容易随意“乱放”软件包的人,我的建议是默认安装,不要在自己的系统上下载tar.gz压缩包再自己解压安装包进去,因为这样子软件包没有一个系统的整理归纳,后期想要找或者是其他的软件需要环境配置也挺麻烦的。
1.3. 安装nginx
我使用的方式是: sudo apt-get install nginx
若采用的是 apt-get
安装的话nginx默认安装目录应该是在 /etc/nginx
中,且其文件夹目录为下:
安装完成后,可以启动一下nginx. sudo service nginx start
若无报错,可访问http://localhost来查看是否安装成功
1.4. nginx的常用命令
service nginx start
service nginx restart
service nginx reload
二、其他
2.1 关于安装php和mysql
关于其他这里,我想说我的PHP部署的是7.1版本的,PHP的部署有些许曲折,甚至最后是如何正常运行的我也有些迷惑。关于mysql的安装十分的简单,在网上找一些教程也可以完成。
2.2 关于安装flask
而flask部署的时候我走了一些弯路。现用文字记录一下。
1、先切换了Python的语言版本。服务器最初设定的版本是2.0的版本,但其内有部署3.6的版本的,所以只需要网上搜索一下如何在ubuntu中切换版本就可以了。
2、安装uwsgi
3、安装python-env(python的虚拟环境包)
4、进入虚拟环境后,进入Flask所在的项目中,生成一个uwsgi的部署ini文件。在里边填写配置的端口、路径、线程数、进程数、和nginx所连接的接口等等。
以下为我的uwsgi.ini的部署文件,在此记录。
[uwsgi.ini]
#设置开启嵌入的http服务器
http = 127.0.0.1:8000
#指定目录
chdir = /var/www/html/Garbage
#加载指定的WSGI文件
wsgi-file = /var/www/html/Garbage/main.py
#设置在收到请求时,uwsgi加载的模块中哪个变量将被调用
callable = app
touch-reload = /var/www/html/Garbage
#为python程序设置指定的虚拟环境变量
home = /root/.virtualenvse/py3_web_flask
# socket方式与nginx连接,此参数需要对应nginx参数。即同步连接通道。
#socket = 127.0.0.1:8000
# 为socket操作文件赋予权限
chmod-socket = 666
# 环境退出时自动清理,包含pid、sock和status文件
vacuum = true
#使进程在后台运行,并将日志打到指定的日志文件中
daemonize = yes
daemonize = /var/www/html/Garbage/logs/uwsgi.log
#为预先派生模式设置工作进程数量
processes = 4
5、在nginx开设一个接口专门接入uwsgi服务器从而转接到flask项目中
2.3 关于安装Tensorflow
最后关于Tensorflow的安装,跟其原因是我自己没有搞懂服务器配置。
我在腾讯学习机中狂在安装nvidia的显卡,想安装tensorflow-gpu版本,但学习机根本就不是gpu,也没有其所谓显卡之说。在学习机中只能使用tensorflow-cpu版本。
写在最后
若有什么问题,欢迎各位在评论区留言,一起交流学习