项目部署相关环境安装1. 更新源(修改源) sudo apt-get update2. mysql安装 apt-get install mysql-server apt-get install libmysqlclient-dev3. redis安装 # 安装依赖 sudo apt-get update sudo apt-get install gcc sudo apt-get install build-essential tcl # 安装redis sudo apt-get install redis-server4. 安装虚拟环境 pip install virtualenv pip install virtualenvwrapper5. 配置 virtualenvwrapper 1. 使得安装的virtualenvwrapper生效,编辑~/.bashrc文件 export WORKON_HOME=$HOME/.virtualenvs export PROJECT_HOME=$HOME/workspace source /usr/local/bin/virtualenvwrapper.sh 2. 使编辑后的文件生效 source ~/.bashrc6. 安装依赖包在虚拟环境使用以下命令将当前虚拟环境中的依赖包以版本号生成至文件中 pip freeze > requirements.txt进入虚拟环境 批量安装依赖包 pip install -r requirements.txt在安装 Flask-MySQLdb 的时候可能会报错,可能是依赖包没有安装,执行以下命令安装依赖包 sudo apt-get build-dep python-mysqldbNginxsudo apt-get install nginx运行及停止/etc/init.d/nginx start #启动/etc/init.d/nginx stop #停止配置文件编辑文件:/etc/nginx/sites-available/default# 如果是多台服务器的话,则在此配置,并修改 location 节点下面的 proxy_passupstream flask { server 127.0.0.1:5000; server 127.0.0.1:5001;}server { # 监听80端口 listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.html index.htm index.nginx-debian.html; server_name _; location / { # 请求转发到gunicorn服务器 proxy_pass http://127.0.0.1:5000; # 请求转发到多个gunicorn服务器 # proxy_pass http://flask; # 设置请求头,并将头信息传递给服务器端 proxy_set_header Host $host; # 设置请求头,传递原始请求ip给 gunicorn 服务器 proxy_set_header X-Real-IP $remote_addr; }}MySQL安装sudo apt-get install mysql-server 不知道mysql 默认密码适用 1. ubuntu 查看默认密码 sudo cat /etc/mysql/debian.cnf2. 使用缺省账户登录,修改root用户密码 update mysql.user set authentication_string=password('mysql') where user='root'3. sudo mysql -uroot -p, 输入密码4. 更新密码 update user set password=password("mysql") where user="root"; update mysql.user set authentication_string=password('mysql') where user='root' ;5. 如果需要sudo 登录 vim /etc/mysql/my.cnf 添加 [mysqld] skip-grant-tablesredis 安装sudo apt-get install redis-serverNginx卸载和安装采用 C 语言编写实现分流、转发、负载均衡删除nginx,-purge包括配置文件 sudo apt-get --purge remove nginx 移除全部不使用的软件包 sudo apt-get autoremove 罗列出与nginx相关的软件并删除 dpkg --get-selections|grep nginx sudo apt-get --purge remove nginx sudo apt-get --purge remove nginx-common sudo apt-get --purge remove nginx-core 查看nginx正在运行的进程,如果有就kill掉 ps -ef |grep nginx sudo kill -9 XXX 全局查找与nginx相关的文件 sudo find / -name nginx* sudo rm -rf file 删除列出的所有文件 sudo rm -rf file 重装nginx sudo apt-get update sudo apt-get install nginx Nginx 的其他内容 测试nginx配置是否正确 sudo nginx -tnginx 重启 sudo service nginx restart
nginx: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/sites-enabled/ms.recipe_box.com.conf:2 删除/etc/nginx/sites-available/default文件,重新启动服务即可 Nginx 效果出现异常建议重启Nginx服务** sudo service nginx restart**
Gunicorn 安装1. Gunicorn(绿色独角兽)是一个Python WSGI的HTTP服务器2. 从Ruby的独角兽(Unicorn )项目移植3. 该Gunicorn服务器与各种Web框架兼容,实现非常简单,轻量级的资源消耗4. Gunicorn直接用命令启动,不需要编写配置文件安装安装 pip install gunicorn 查看选项 gunicorn -h 运行
# -w: 表示进程(worker) -b:表示绑定ip地址和端口号(bind)gunicorn -w 2 -b 127.0.0.1:5000 运行文件名称:Flask程序实例名pip升级安装 sudo apt-get install python3-pip wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate python get-pip.py 升级 sudo pip3 install --upgrade pip 卸载 sudo apt-get remove python3-pip 附加内容腾讯云(ubuntu16.04)不能升级pip 的解决方法
尝试更新源 sudo apt-get update 修改源 sudo vim /etc/apt/sources.list deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse # disabled on upgrade to xenial deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse # disabled on upgrade to xenial deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse #Not for humans during development stage of release xenial deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse # disabled on upgrade to xenial deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse # disabled on upgrade to xenial deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse # disabled on upgrade to xenial deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse # disabled on upgrade to xenial deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse #Not for humans during development stage of release xenial deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse # disabled on upgrade to xenial
然后执行
|