加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码网 (https://www.900php.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

带你迈过那些部署服务器时的坑?

发布时间:2018-08-31 03:10:16 所属栏目:外闻 来源:程序猿与吉他狗
导读:副标题#e# 在开发环境完成了Flask项目的开发以后,就需要将项目部署到服务器上,开发时由Werkzeug提供的开发服务器是无法应用于实际项目的,在生产环境中必须使用专门的服务器程序,web服务器程序非常多,本文服务器操作系统为Centos7,网站服务器采用的是uw

virtualenv是一个神器,它用来隔离各种不同的Python运行环境,避免了不同项目依赖的库版本不同导致的冲突。

  1. $ sudo yum install python-virtualenv 

为什么不使用pip来安装?因为在Centos中会安装成模块,无法全局调用,简单的处理方式就是使用yum来安装,后面的uwsgi同理。

  1. $ sudo yum install uwsgi 

安装nginx

  1. $ sudo yum install nginx 

三、安装配置mysql8

       在Centos中直接用yum安装mysql会安装mariadb,对于数据库我们需要精确的控制版本,所以需要其他安装方式。

1.安装mysql

  1. $ cd ~ 

获取mysql的仓库文件并安装

  1. $ wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm 

安装仓库

  1. $ sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm 

添加mysql到repolist

  1. $ sudo yum repolist enabled | grep "mysql.*-community.*" 

查看列表状态,准备安装的版本是否为enable。

  1. $ sudo yum repolist all | grep mysql 

安装mysql

  1. $ sudo yum install mysql-community-server 

2.启动mysql

在centos中使用systemctl命令来控制服务启动、重启、停止、设置开机启动和查看状态,后面我们会编写一个服务来自启动uwsgi

启动

  1. $ sudo systemctl start mysqld.service 

停止

  1. $ sudo systemctl stop mysqld.service 

重启

  1. $ sudo systemctl restart mysqld.service 

查看状态

  1. $ sudo systemctl status mysqld.service 

设置开机启动

  1. $ sudo systemctl enable mysqld.service 

         取消开机启动

  1. $ sudo systemctl disable mysqld.service 

3.mysql的操作

安装过程中我们并没有设置账号密码,但是mysql默认有一个root账号,安装时为它设置了临时密码,我们第一件事就是查看这个密码登录root账号,并修改密码。

查看root账号临时密码

  1. $ sudo grep 'temporary password' /var/log/mysqld.log 

登录root账号并修改密码

  1. $ mysql -u root –p 

输入临时密码后进入mysql的操作界面

  1. >ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword'; 

和Linux一样,我们同样不能使用root账号来操作数据库,应该新建一个账号来连接相应的数据库。

新建用户

  1. >ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword'; 

新建数据库

  1. >create datebase webapp charset=utf8mb4 collate=utf8mb4_unicode_ci; 

数据库授权

  1. >grant all privileges on *.* to 'flask'@'lcoalhost' with grant option; 

四、配置服务器

现在已经万事俱备了,我们只需要做相应的配置就可以完成服务器的搭建了。

1.配置python虚拟环境及安装依赖

首先将我们完成开发的程序传到服务器上,在开发计算机上使用scp命令:

  1. $ scp –r local_folder user@server_ip:/home/user/myapp 

输入服务器的user用户的密码

然后新建虚拟环境

  1. $ cd /home/user/myapp  
  2. $ virtualenv venv --python=python3 

进入虚拟环境

  1. $ source venv/bin/activate 

安装依赖

requirements.txt是我们在开发完成后使用pip freeze > requirements.txt生成的。

  1. (venv)$ pip install -i https://pypi.douban.com/simple -r requirements.txt 

-i 参数是使用豆瓣源,速度嗖嗖快,-r是指安装requirements.txt逐个安装。

(编辑:源码网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读