1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- #!/usr/bin/env bash
- # 创建备份目录,如果不存在
- mkdir /root/backup
- send=`date '+%Y%m%d-%H%M%S'`
- # 压缩media目录下用户上传的图片到备份目录,并按日期命名
- tar -czvf /root/backup/media-${send}.tar.gz /root/website/website/media/
- # 切换到项目根目录
- cd /root/website/website
- # 覆盖本地的方式,检出代码
- git fetch --all
- git reset --hard origin/master
- git pull
- # 赋予updat命令权限(如果命令更新了,则权限会丢失)
- sudo chmod 777 update.sh
- sudo chmod 777 zipimg.sh
- # 压缩图片 TODO 暂时不需要在更新后,立即压缩图片
- #zipimg
- # 清理静态资源
- rm -rf /root/website/website/collectedstatic
- # 收集静态文件,为nginx使用,免输入yes或no,默认yes
- /usr/bin/expect <<-EOF
- spawn python manage.py collectstatic
- send "yes\n"
- expect eof
- EOF
- # 生成数据库升级脚本
- python manage.py makemigrations
- # 执行数据库升级操作
- python manage.py migrate
- # 停止和启动memcached缓存服务
- systemctl restart memcached
- systemctl enable memcached
- #systemctl status memcached
- # 停止和启动web服务集群
- killall -9 uwsgi
- nohup uwsgi --ini uwsgi.ini & ls
- # 停止和启动nginx
- systemctl restart nginx
- #systemctl status nginx
- # 产看启动的集群进程,好放心
- #ps -ef | grep uwsgi
- # 回到之前的目录
- cd -
- ls
|