美文网首页flask-cms
我使用flask开发到部署组织结构的步骤

我使用flask开发到部署组织结构的步骤

作者: 真是明明 | 来源:发表于2018-02-20 20:18 被阅读40次

    创建新的数据库
    设置新用户 能不用root尽量不用。
    mysql -u root
    create user 'web'@'localhost' identified by 'web';
    use 数据库名;
    grant all on 数据库名.* TO 'web'@'localhost';

    创建虚拟环境:
    pip install virtualenv
    virtualenv venv 或者python -m virtualenv venv
    mac linux : source venv/bin/activate

    更改pip安装源为国内的源,比如aliyun

    mkdir ~/.pip

    vi ~/.pip/pip.conf

    添加内容如下:
    [global]
    index-url = http://mirrors.aliyun.com/pypi/simple/

    [install]
    trusted-host=mirrors.aliyun.com

    服务器
    一安装.
    yum install git
    git --version
    二. 生成SSH密钥
    ssh-keygen -t rsa -C "your email address"
    连续按3个回车(密码默认为空),得到 id_rsa 和 id_rsa.pub 文件,在/root/.ssh 下说明生成成功

    三.添加密钥到Github

    打开 Github,登录自己的账号后
    点击自己的头像->settings->SSH And GPG Keys->New SSH key
    将本地 id_rsa.pub 中的内容粘贴到 Key 文本框中,随意输入一个 title(不要有中文),点击 Add Key 即可
    4测试.
    ssh git@github.com
    会出现如下询问:
    Are you sure you want to continue connecting (yes/no)?
    键入yes后回车,如果出现
    Hi xxx! You’ve successfully authenticated, but GitHub does not provide shell accessConnection to github.com closed.

    项目中需要环境变量的时候:
    编辑变量:vi /etc/profile
    添加 export xxxx=xxx
    马上生效:source /etc/profile

    本地先推送到git
    服务器clone下来
    每次更新:git pull origin master

    开始项目:
    cookiecutter https://github.com/sloria/cookiecutter-flask.git
    添加git

    使用supervisor来管理gunicorn进程的启停

    yum install -y supervisor

    systemctl start supervisord.service

    systemctl enable supervisord.service

    要监控gunicorn进程,只需要添加/etc/supervisord.d/gunicorn.ini配置文件,详细配置参考gunicorn的官方示例

    vi /etc/supervisord.d/gunicorn.ini

    内容如下:
    [program:gunicorn]
    command=/home/www/flask_project/venv3/bin/gunicorn wsgi:app -c deploy/gunicorn.conf.py
    directory=/home/www/flask_project
    user=root
    autostart=true
    autorestart=true
    redirect_stderr=true

    说明:
    command 即启动gunicorn的命令,此处要写绝对路径
    directory 项目部署目录,不然没办法知道command中wsgi模块在哪

    1. 增加配置文件后,更新

    supervisorctl reread

    supervisorctl update

    1. 查看状态

    supervisorctl status

    1. 启动/停止

    supervisorctl start gunicorn

    supervisorctl stop gunicorn

    supervisorctl restart gunicorn

    附上git常用命令以供使用:
    git clone <address>:复制代码库到本地;
    git add <file> ...:添加文件到代码库中;
    git rm <file> ...:删除代码库的文件;
    git commit -m <message>:提交更改,在修改了文件以后,使用这个命令提交修改。
    git pull:从远程同步代码库到本地。
    git push:推送代码到远程代码库。
    git branch:查看当前分支。带*是当前分支。
    git branch <branch-name>:新建一个分支。
    git branch -d <branch-name>:删除一个分支。
    git checkout <branch-name>:切换到指定分支。
    git log:查看提交记录(即历史的 commit 记录)。
    git status:当前修改的状态,是否修改了还没提交,或者那些文件未使用。
    git reset <log>:恢复到历史版本。
    Git实例:
    1、远程仓库README.git为空,把本地代码上传到远程仓库
    echo "# Test" >> README.md
    git init
    git add README.md
    git commit -m "first commit"
    git remote add origin git@github.com:******/README.git
    git push -u origin master

    2、更新本地代码到远程仓库
    git add README.md
    git commit -m "first commit"
    git push -u origin master
    3、获取远程仓库中的代码到本地
    git clone git@github.com:*****/README.git
    4、从远程仓库同步代码更新本地代码
    git pull origin master

    相关文章

      网友评论

        本文标题:我使用flask开发到部署组织结构的步骤

        本文链接:https://www.haomeiwen.com/subject/ytaitftx.html