- 博客(119)
- 收藏
- 关注

原创 Django3.0.8生产环境部署nginx、uwsgi、daphne、supervisor、gunicorn、celery
Django3.0.8+nginx+uwsgi+daphne+supervisor 生产环境部署前言环境配置技术方法实现过程安装Python3.8.3安装Nginx安装MySQL安装Redis安装虚拟环境 virtualenv创建虚拟环境python中的virtualenv命令集在虚拟环境中安装pip包将项目文件上传到服务器规划的目录拉取所有需要的static file到同一目录配置nginx作为反向代理服务器编辑uwsgi文件使用supervisor管理daphne和uwsgi进程最后部署中遇到的错误和解
2020-07-08 04:20:17
1881
4
原创 windows11 docker 安装mysql、redis、rabbitmq、nginx
目录mysqlredisrabbitmqnginxmysqldocker run -d --privileged=true --restart=always --name mysql -v /d/Docker/MySQL/data:/var/lib/mysql -v /d/Docker/MySQL/log:/var/log/mysql -p 3306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=123456 mysql --character-set
2022-05-12 11:14:47
1267
1
原创 Vue3 组合式API初体验
一、背景Vue3.x 版本的出现带来了许多令人眼前一亮的新特性,其中组合式 API(Composition API),一组附加的、基于功能的 API 被作为一种新的逻辑复用和代码组织的方式提供给了开发者,提供更加灵活的组合组件逻辑能力。二、什么是组合式API( Composition API)组合式 API:一组低侵入式的、函数式的 API,使得我们能够更灵活地「组合」组件的逻辑用一句通俗的话来说:composition API 其实是用于解决功能、数据和业务逻辑分散的问题,使项目更益于模块化开
2022-03-20 00:08:35
2671
1
原创 windows11 docker 安装mysql、redis、rabbitmq、nginx
# mysqldocker run -d --privileged=true --restart=always --name mysql -v /e/docker/mysql/data:/var/lib/mysql -v /e/docker/mysql/log:/var/log/mysql -p 3306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=123456 mysql --character-set-server=utf8mb4 --colla.
2022-03-07 04:16:59
2920
原创 GitLab CI/CD 初体验
GitLab CI/CDGitLab CI/CD 是一个内置在GitLab中的工具,用于通过持续方法进行软件开发:Continuous Integration (CI) 持续集成Continuous Delivery (CD) 持续交付Continuous Deployment (CD) 持续部署详细介绍可以看官方文档:CI/CD 概念持续集成的工作原理是将小的代码块推送到Git仓库中托管的应用程序代码库中,并且每次推送时,都要运行一系列脚本来构建、测试和验证代码更改,然后再将
2022-01-09 19:17:51
818
原创 清理Docker的container,image与volume
Docker的镜像(image)、容器(container)、数据卷(volume), 都是由daemon托管的。 因此,在需要清理时,也需要使用其自带的手段。清理技巧清理所有停止运行的容器:docker container prune# ordocker rm $(docker ps -aq)清理所有悬挂(<none>)镜像:docker image prune# ordocker rmi $(docker images -qf "dangling=true"
2021-11-20 01:45:55
2863
原创 win10 使用 docker 安装 mysql
参考网址:Docker HubGitHub - docker-library/mysql: Docker Official Image packaging for MySQL Community Server不挂载本地磁盘(重启后数据会丢失)docker run -it --rm --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3310:3306 -d mysql挂载本地磁盘(不随系统自动启动)docker run -it --rm -v..
2021-10-08 21:49:37
434
原创 Mac Docker搭建PostGreSQL
拉取docker镜像docker pull postgres查看镜像docker images创建本地卷docker volume create pgdata启动容器docker run -it --name postgres -e POSTGRES_PASSWORD=123456 -v pgdata:/var/lib/postgresql/data -p 5432:5432 -d postgres查看容器的运行状态docker ps -a进入容器do.
2021-06-24 16:59:00
639
原创 Mac Docker搭建MySQL8.0
1. 拉取镜像docker pull mysql:latest 2.检查是否拉取成功(查看镜像)docker images3.创建并启动一个MySQL容器docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql"""–name:给新创建的容器命名,此处为:mysql-e: MySQL配置信息,此处配置用户为:root,密码:123456-p:端口映射,把主机的330..
2021-06-24 16:43:05
765
原创 Linux - 查看日志的指令 tail
在实时日志上打印颜色,给每个状态给上不同的颜色,INFO绿色、WARN黄色、ERROR红色tail -f logs/xxx.log | perl -pe 's/(INFO)/\e[0;32m$1\e[0m/g,s/(WARN)/\e[0;33m$1\e[0m/g,s/(ERROR)/\e[1;31m$1\e[0m/g'只看ERRORtail -f logs/xxx.log | grep "ERROR" --line-buffered | perl -pe 's/(ERROR)/\e[1;31m$1\
2021-05-10 12:38:55
418
原创 vue-cli 4 的es5兼容问题
第一步 mian.js引入一下两个模块babel-polyfill 已经废弃,而且babel-polyfill就是由这两个构成的,所以直接引入这个两个即可import 'core-js';import 'regenerator-runtime/runtime';第二步 修改babel.config.js文件browsers 根据自己需求更改module.exports = { presets: [ ['@vue/app', { 'targ
2021-05-07 18:42:59
2855
1
原创 win10 安装 pycrypto 的方法
下载 VC tool 14.0链接地址:https://go.microsoft.com/fwlink/?LinkId=691126添加用户环境变量变量名:VCINSTALLDIR变量值:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC运行下面的指令进入 C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC 目录执行 pip install --upgrade setuptool
2021-01-31 14:43:34
595
1
原创 pip修改源
pip修改源修改默认源Window下Linux下临时使用镜像源国内的pip源修改默认源Window下pip config set global.index-url https://mirrors.aliyun.com/pypi/simple网上有很多文章,需要自己创建一个文件,然后放在用户目录。中感觉这种方法非常不爽。 命令行解决才是正途。通过上面的方式可以直接修改默认源,修改之后所有pip install 都会通过自定义的源来安装。Linux下修改~/.pip/pip.conf(或者创建一个
2021-01-31 14:29:12
414
原创 Nginx开启https后Django的request.build_absolute_uri仍然是http
nginx配置如下:server { listen 443 default ssl; root /path/to/source; server_name mydomain; ssl_certificate /path/to/cert; ssl_certificate_key /path/to/key; client_max_body_size 10M; access_log /var/log/nginx/alog.log;
2020-10-23 11:02:00
1242
原创 Django celery执行延时任务
由于项目需求,需要在指定时间之后执行异步任务给用户推送消息,由于之前只用过celery的定时任务,在查阅一番资料之后,发现有官方文档中是有相关说明的。T.delay(arg, kwargs=value)是常见的用来执行celery异步任务的命令。而还有另一个命令是不常用的T.apply_async((arg,), {'kwarg': value}, countdown=60, expires=120)是可以用来执行延时任务的,其中countdown指定多少秒后执行,expires
2020-09-16 19:05:55
2062
2
原创 CentOS 8 rsync + sersync 文件同步
CentOS 8 rsync + sersync 文件同步rsync + sersyncrsync+sersync 数据同步系统版本安装 rsync查看 rsync 版本rsync serverrsync 配置文件rsync 配置文件参数rsync 服务器端的密码文件rsync 客户端的密码文件修改权限systemctl 管理 rsync 服务新建 /etc/sysconfig/rsyncd 文件新建 rsyncd.service 文件rsyncd 启动查看rsync 端口 进程开启防火墙端口rsync c
2020-09-11 10:25:53
1813
1
原创 Centos8下Mysql8的全量与增量数据定时备份方案
操作环境数据库:mysql 8.0操作系统:centos 8数据库全量备份流程1)、创建数据库备份文件与备份日志所保存的文件夹cd /root# 创建备份文件夹mkdir mysql_bakcd mysql_bak# 创建保存全量数据的文件夹mkdir mysql_full# 创建备份日志文件夹mkdir log# 创建保存全量与执行脚本的文件夹mkdir bin2)、创建全量备份执行脚本vim /root/mysql_bak/bin/backfu.
2020-09-10 14:23:21
1293
原创 富文本编辑器Froala Editor v3.x 使用
Froala Editor是可以免费使用的。为什么要破解呢,一是免费版总提示需要license,烦人;二是验证时会访问官方网址,本来就是国外的东西,打开网址时会影响网页速度。我用的是当前最新版v3.2.1破解方法:(只需两步)1.格式化froala_editor.min.js2.搜索:new Image ,删除以下代码即可。红框里的整段代码都可以删掉。 它的验证方法是用js创建了一张图片并访问,图片地址就是验证的网址,只需要把验证代码删掉就可以了,还能减少一点点的文件体积。..
2020-09-09 15:45:34
2304
原创 CentOS8 下 解决Nginx Permission Denied问题
背景最近倒腾服务器的时候,选择了CentOS8操作系统,在安装配置Nginx的时候遇到了Permission Denied问题。按照chown和chmod进行配置无果,后来定位到SELinux问题。SELinux是什么?When you upgrade a running system to Red Hat Enterprise Linux (RHEL) 6.6 or CentOS 6.6, the Security Enhanced Linux (SELinux) security permi
2020-09-09 15:41:47
3491
原创 Django settings.py设置选项
settings.py的默认设定与工作原理Django设置文件settings.py包含的选项非常多,但好消息是大部分不需要我们手动去设置。当我们使用django-admin.py startproject xxx命令创建一个Django项目时,你会发现生成的settings.py已经包含了部分基本的默认设定,我们只需要修改和添加我们需要使用的设定就好了。一个项目完整的全局默认设置在django/conf/global_settings.py文件中。Django在编译时,会先载入global_.
2020-09-02 10:10:11
470
原创 electron 自动更新静默安装到一半就失败
原因是我设置了阻止关闭事件let canQuit = false;mainWindow.on('close', (event) => { if (!canQuit) { mainWindow.hide(); mainWindow.setSkipTaskbar(true); event.preventDefault(); }});所以在执行 autoUpdater.quitAndInstall(); 方法之前要加上canQ.
2020-08-16 10:21:58
1854
3
原创 electron-bulider打包特别慢解决办法
vue-electron 执行npm run build时,在build的时候会因为下载远程打包所需文件而超时,然后根据错误一步一步就行手动安装相应的文件。虽然在网上参考了很多相关方法,最终还是失败,然后屡次尝试后,终于成功了。附上elelctron相关的淘宝镜像地址:https://npm.taobao.org/mirror...step1:npm run build后,第一次报错需要下载 electron-v2.0.18-win32-x64.zip(我这里是需要该版本的文件,根据自己的错误信息,
2020-08-14 13:07:12
2195
原创 npm 安装 better-sqlite3 报错 if not defined npm_config_node_gyp
主要报错是这一行,坑爹的python2的编码问题 ,UnicodeDecodeError: 'ascii' codec can't decode byte 0xd5 in position 11: ordinal not in range(128)原因是安装windows-build-tools时指定的python版本是python2解决办法:修改C:\Users\hd\AppData\Roaming\npm\etc\npmrc文件中python的路径,我改成python3以后就好了,要.
2020-08-03 13:09:48
1677
原创 windows下,electron安装better-sqlite3并编译
1. 安装windows-build-tools,注意用管理员身份启动终端(如果安装node的时侯已经安装了相关的tools就略过这一步)npm install --global windows-build-tools 这里有个点要注意一下,这个工具分版本 vs2015, vs2017, 默认是2017,如果是需要2015版安装时后面加参数npm install --global windows-build-tools --vs2015 如果不知道当前需要哪个版本,先默认安装,后...
2020-07-29 12:39:06
3442
原创 windows 安装electron慢的解决方法
在C:\Users\xx\.npmrc文件中添加electron淘宝镜像ELECTRON_MIRROR="https://cdn.npm.taobao.org/dist/electron/"没有这个文件就自己创建一个
2020-07-29 11:46:17
689
原创 node 安装 windows-build-tools
npm install --global --production [email protected]或者npm install --global --production [email protected]因为直接安装会报一些错误
2020-07-28 19:57:27
3635
2
原创 gunicorn + nginx:通过套接字或代理服务器
我已经看到了使用gunicorn和nginx托管django应用程序的两种策略。网络端口上运行gunicorn。例子(来自http://goodcode.io/blog/django-nginx-gunicorn/):nginx配置:location / { proxy_pass_header Server; proxy_set_header Host $http_host; proxy_redirect off; proxy_set_header X-Real-IP
2020-07-10 00:00:43
592
原创 gunicorn 使用教程
Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server。和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点。gunicorn 安装pip install gunicorngunicorn + flask 简单示例flask程序需要先安装flask module,pip install flask。gunicorn_demo.pyfrom flask import Flaskapp = Flask(__name__)@
2020-07-09 23:47:25
2004
原创 python之gunicorn的配置
python常见的web部署搭配nginx+gunicorn,下面记录一下gunicorn的配置使用。安装gunicornpip install gunicorngunicorn -h # 查看使用的命令gunicorn启动一个flask的应用程序# app.pyfrom flask import Flask def create_app(): app = Flask(__name__) return app app = create_app()
2020-07-09 23:37:16
1834
原创 supervised使用教程
安装平台要求引自官网(supervised.org/introductio…):Supervisor已经过测试,可以在Linux(Ubuntu 9.10),Mac OS X(10.4 / 10.5 / 10.6)和Solaris(对于Intel为10)和FreeBSD 6.1上运行。它可能在大多数UNIX系统上都能正常工作。在任何版本的Windows下,Supervisor都不会运行。Supervisor可以使用Python 2.4或更高版本,但不能在任何版本的Python 3下使用。安装安装
2020-07-09 23:31:27
2495
原创 CentOS安装Supervisor
supervisord 负责管理进程的server端supervisorctl client端的命令行工具,管理子进程#安装supervisor$ yum install -y supervisor#开机启动$ systemctl enable supervisord#启动supervisord$ systemctl start supervisord#查看状态$ systemctl status supervisord#修改配置文件$ vim /etc/supervisord
2020-07-08 15:18:30
456
原创 CentOS8下pip安装提示Twisted错误
直接用pip install Twisted的话会报错:Could not find a version that satisfies the requirement Twisted>=20.3.0 (from Scrapy) (from versions: )No matching distribution found for Twisted>=20.3.0 (from Scrapy)下载Twisted包,解压,因为我使用python3来run爬虫的,所以命令是python3
2020-07-08 14:57:51
567
原创 win10下pip安装提示Twisted错误
pip安装提示Twisted错误(Python3.6.4安装Twisted错误)当我们在安装scrapy的过程中出现了Twisted错误,当我们有继续安装Twisted的时候,又继续报错,通过一系列的查询和了解,终于发现了问题,现在就来和大家一起解决这个复杂的BUG……环境Python3.8.3 + Win10问题描述当我安装pip install Twisted的时候报错。问题原因原来是Twisted和高版本的Python有兼容性的问题。解决方法我们通过在Python扩展包的非官方Win
2020-07-08 14:52:06
541
原创 Django配置Ajax跨域调用/设置Cookie
跨域调用前端单纯的想要通过ajax跨域调用后端提供的API是比较简单的,可谓是前人栽树,后人乘凉,ottoyiu提供了解决Django跨域问题的插件django-cors-headers。它的使用方法在github上介绍的是很详尽的,我这里总结一下基本的东西:首先下载这个插件pip install django-cors-headers然后在你的Django项目中的settings.py中做如下配置(install app和middleware):INSTALLED_APPS = ( ...
2020-07-08 14:31:41
388
原创 更换pip源到国内镜像
pip国内的一些镜像 阿里云http://mirrors.aliyun.com/pypi/simple/中国科技大学https://pypi.mirrors.ustc.edu.cn/simple/豆瓣(douban)http://pypi.douban.com/simple/清华大学https://pypi.tuna.tsinghua.edu.cn/simple/中国科学技术大学http://pypi.mirrors.ustc.edu.cn/simple/...
2020-07-08 03:13:15
390
原创 centos8安装nginx后开启防火墙端口
执行下面的命令sudo firewall-cmd --permanent --zone=public --add-service=httpsudo firewall-cmd --permanent --zone=public --add-service=httpssudo firewall-cmd --reload
2020-07-07 22:36:12
706
原创 如何在 CentOS 8 上安装 Python 3.8
Python 是世界上被广泛使用的编程语言之一。语法简单易学,Python 是初学者和有工作经验者的一个很流行的选择。Python 是一个多功能的编程语言。它可以被用来构建各种应用程序,从简单的脚本到复杂的机器学习算法。CentOS 8 包含了 Python 3.6,你可以通过dnf工具来安装或者升级 Python 到这个版本。在写作的时候,Python 3.8 是 Python 语言最新的主要发行版。它包含了很多新的特性,包括 assignment expressions, positional-
2020-07-07 21:40:08
1404
原创 pip安装mysqlclient报错OSError: mysql_config not found
执行pip install mysqlclient报错信息如下:[root@CentOS7-demo bin]# pip install mysqlclientCollecting mysqlclient Using cached mysqlclient-1.3.12.tar.gz Complete output from command python setup.py egg_info: /bin/sh: mysql_config: command not found ...
2020-07-07 14:12:10
866
转载 python3.7安装, 解决pip is configured with locations that require TLS/SSL问题
1.安装相关依赖yum install gcc libffi-devel zlib* openssl-devel# libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make2.下载并解压 wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz...
2020-07-07 10:23:24
1128
原创 Django-Channels使用和部署
Django-Channels作用在Django部署的时候,通常使用的都是WSGI(Web Server Gateway Interface)既通用服务网关接口,该协议仅用来处理 Http 请求,更多关于WSGI的说明请参见廖雪峰博客。当网址需要加入 WebSocket 功能时,WSGI 将不再满足我们的需求,此时我们需要使用ASGI既异步服务网关接口,该协议能够用来处理多种通用协议类型,包括HTTP、HTTP2 和 WebSocket,更多关于 ASGI 的说明请参见此处。ASGI 由 Dja
2020-07-07 09:19:18
7354
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人