zoukankan      html  css  js  c++  java
  • django入门到精通11 windows10 + centos + django2 + celery4 开发环境的搭建

    windows10 + centos + django2 + celery4 开发环境的搭建


    在windows10环境中搭建了 django2.0.4 + celery4.4.2 的环境,经过调试可以通过命令调起 celery 的队列 celery worker -A config -l info -P eventlet,发现在使用其他功能时会出现各种莫名其妙的问题
    而程序跑在centos环境中是没有问题的

    习惯了在windows中使用pycharm开发程序,如果我们把在windows中开发的程序能运行在centos系统中,这样就可以加快开发和测试的效率,避免很多开源软件不能在 windows 中运行的问题了


    环境:windows 和 centos中都要安装 python3.7.9

    需要安装的第三方包:保持windows和linux版本一致

    pip install celery==4.4.2
    pip install eventlet==0.25.2
    pip install Django==2.0.4
    
    pip install pymysql
    pip install requests
    pip install redis==3.4.1

    整体思路是:
    在windows中搭建好相关的开发环境:django + celery 并使用 cygwin 这个工具启用rsync服务端 --> 然后在 linux 中启用计划任务定时拉取windows中的python代码,也可以手动执行代码,一键同步程序到linux

    1.windows中安装python3.7.9和虚拟环境,如果只是使用 django 功能可以在windows中跑起来,如果是 celery 等一些不常用的开源工具就有兼容问题了

    pip install virtualenv
    pip install virtualenvwrapper-win

    # 创建虚拟环境 python379_django2

    mkvirtualenv python379_django2

    2.安装rsync服务

    a.下载并安装cygwin 软件:https://cygwin.com/setup-x86_64.exe
    然后通过 cygwin 软件安装 rsync同步和cygrunsrv服务管理 这两个插件,具体安装详情可以参考 https://www.cnblogs.com/reblue520/p/13691170.html


    b.将 rsync 注册为 windows10 的系统服务
    # cygwin 软件安装在了 d:/cygwin64 目录下,大家可以根据情况修改

    cygrunsrv -I "Rsync" -p "d:\cygwin64\bin\rsync.exe" -a "--config=d:\cygwin64\etc\rsyncd.conf --daemon --no-detach" -f "Rsync daemon service" --user administrator --passwd password --stdout "d:\cygwin64\rsyncd-stdin.log"  --stderr "d:\cygwin64\rsyncd-stderr.log" -y "tcpip" -e "CYGWIN=nontsec binmode" -c "d:\cygwin64" -o

    rsync 的主配置文件:D:cygwin64etc syncd.conf

    use chroot = yes
    max connections = 4
    log file = /var/log/rsyncd.log
    
    [windows_video]
    path = /cygdrive/d/python/django_imooc_xiaobai/muke_vedio_test/video
    read only = false
    transfer logging = yes
    secrets file = /etc/rsyncd.secrets

    D:cygwin64/etc/rsyncd.secrets 密码:

    apache:pass

    3.在centos系统中启用计划任务拉取windows代码的脚本

    # 计划任务

    # every 10 minutes rsync win to local 
    */10 * * * *  /bin/bash /usr/local/worksh/win_vedio_tolocal.sh

    # 拉取windows --> centos 脚本

    # cat  /usr/local/worksh/win_vedio_tolocal.sh
    #!/bin/bash
    source /etc/profile
    # windows的ip地址,从windows主动拉取代码到本机
    src_ip="10.9.4.199"
    
    # 拉取windows的文件到centos中
    /usr/local/rsync/bin/rsync -avzP --delete --exclude="*.pyc" --password-file=/data/www/.rsync/rsyncd.win.pass apache@${src_ip}::windows_video /data/www/vhosts/video/

    # 修改密码权限  /data/www/.rsync/rsyncd.win.pass
    #
    # cat /data/www/.rsync/rsyncd.win.pass
    pass

    4.centos中 安装 python3.7.7 + django2 + celery 环境

    安装python3.7.7可以参考:https://www.cnblogs.com/reblue520/p/12489897.html

    # 安装虚拟工具
    pip3 install virtualenvwrapper

    # 创建虚拟环境
    mkvirtualenv python37_django2 --python=python3

    新建存放环境目录
    mkdir -p ~/Envs

    配置virtualenvwrapper环境

    # vim /etc/profile

    # 设置virtualenvwrapper
    export WORKON_HOME=~/Envs
    export VIRTUALENVWRAPPER_PYTHON=/usr/local/python3/bin/python3
    # 打开终端自动启用
    source /usr/local/python3/bin/virtualenvwrapper.sh

    # 列出存在的虚拟环境
    # lsvirtualenv

    # 进入虚拟环境
    # workon python37_django2

    # 安装依赖

    pip install celery==4.4.2
    pip install eventlet==0.25.2
    pip install Django==2.0.4
    
    pip install pymysql
    pip install requests
    pip install redis==3.4.1

    备注:
    因为使用了mysql和redis 数据库,可以和windows共用

    修改redis 的配置:
    redis.windows-service.conf

    修改绑定并开放端口即可
    bind 0.0.0.0

  • 相关阅读:
    更多的bash shell命令
    Docker(一)Docker概述
    SpringCloud(一)版本选择
    Scala 技术笔记之 可变长参数
    嵌入式 ThriftServer in Spark
    Spark 代码走读之 Cache
    Scala 技术笔记之 Option Some None
    Spark作业执行
    Shuffle
    Jetty初探
  • 原文地址:https://www.cnblogs.com/reblue520/p/14444038.html
Copyright © 2011-2022 走看看