• flask_12:API服务器架设笔记(阿里云服务器 + flask + nginx + uwsig)


    sudo apt-get install python-pip

    下面这个博客详细讲述了将一个API服务部署到阿里云服务器的过程

    API服务器架设笔记(flask+nginx+uwsig)

      

    一、下面是部署海外投放监测链接服务的流程:

    1、申请新服务器后,安装python、pip包:

    安装python: 略

    安装pip:sudo apt-get install python-pip

    查看python版本:python -version
    查看一下Python可执行文件的位置:which python (一般为:/usr/bin/python)

    查看本地安装了几个python: 先:cd /usr/bin 然后:ll pytho* / ls -li pytho*

    2、配置项目:把代码从gitlab拉倒服务器

    先把服务器的密钥存到gitlab上,再拉代码到服务器

    先查看用户主目录是否有.ssh目录,如果没有:
    ssh-keygen -t rsa -C "wanghailin@huixuanjiasu.com"一路回车,就会创建.ssh目录
    然后把.ssh目录把id_rsa.pub文件中的密钥添加到gitlab上

    3、安装虚拟环境:

    安装virtualenv:      pip install virtualenv
    在项目目录下安装虚拟环境:  virtualenv venv
    安装指定python版本的虚拟环境:
    virtualenv -p PYTHON_EXE, --python=PYTHON_EXE 环境名称
    eg:
    virtualenv -p /usr/bin/python2.6 ENV
    virtualenv --python=3.7 venv

    激活虚拟环境:
    source venv/bin/activate
    退出虚拟环境:deactivate
    删除虚拟环境:rm -rf venv

     4、安装依赖包:

    pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple  (清华镜像)
    如果安装源没有对应的版本,还需要修改依赖的版本号
    安装flask_mongoengine: pip install rednose pip install nose pip install coverage pip install flask_mongoengine

    5、配置Nginx(运维操作,待学习)

    6、配置supervisrod(运维操作,待学习)

    7、添加我们要管理的进程的配置文件:一般都写到supervisord.conf 文件下

    vim写入文件的时候报错:Can't open file for writing Press ENTER or type command to continue。报错原因:没有权限   解决方法:命令前加sudo
    
    继续报错:Sorry, user op is not allowed to execute '/usr/bin/touch ad_monitor_oversea.conf' as root on toufang-oversea-01.  报错原因:还是没有权限  解决方法:联系运维加权限

    写入supervisrod配置文件后,需要确认日志目录已经创建,没有需要手动创建,否则报错。

    # 停止某一个进程,program_name 为 [program:x] 里的 x
    supervisorctl stop program_name
    # 启动某个进程
    supervisorctl start program_name
    # 重启某个进程
    supervisorctl restart program_name
    # 结束所有属于名为 groupworker 这个分组的进程 (start,restart 同理)
    supervisorctl stop groupworker:
    # 结束 groupworker:name1 这个进程 (start,restart 同理)
    supervisorctl stop groupworker:name1
    # 停止全部进程,注:start、restart、stop 都不会载入最新的配置文件
    supervisorctl stop all
    # 载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程
    supervisorctl reload
    # 根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启
    supervisorctl update

     切记:后续更新supervisrod配置文件后,需要update / reload,restart只能重新,不能更新。

    8、测试监测链接是否能接收,http、 https 2个都要测试

     

    二、celery的supervisor的部署

    1、先把启动celery worker的进程配置文件更新好

    2、把celery新应用的代码pull 到服务器上

    3、supervisorctl reload:载入最新的配置文件

  • 相关阅读:
    hbase二级索引学习
    redis-cluster集群Mac部署
    http-flume-kafka.conf
    linux 替换文件中的字符串
    flumeDemo
    redis_exporter监控安装
    Hbase内存磁盘大致关系
    spring cloud 尚硅谷学习
    C10K问题
    navicat 远程链接Mysql问题
  • 原文地址:https://www.cnblogs.com/hailin2018/p/13588134.html
Copyright © 2020-2023  润新知