一、购买ECS服务器
1.进入阿里云“ECS服务器”;
2.创建实例,选择需要的配置,学习的话建议按量付费较优惠,提交订单;

3.安全组规则中,配置可访问的端口,如3306。
二、centos7操作
1.连接购买的阿里云ECS
ssh root@ip
或使用SecureCRT(mac)连接2.更新yum源
yum update
yum upgrade3.安装docker
在阿里云的“容器镜像服务”,选择镜像加速器页签,可以看到各个系统安装手册
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start4.docker里安装Mysql数据库(略)
为什么要用docker安装Mysql,因为yum直接安装下载速度太慢,只能通过从清华、网易等下载文件手动安装。
# docker配置阿里云加速
curl -sSL https:///daotools/set_mirror.sh | sh -s https://
# 重启docker服务
sudo systemctl restart docker5.上传本地文件到阿里云
# 1.rz 命令坑太多,因为无法直接上传文件夹,使用tar压缩成tar.gz又因为编码问题导致上传失败
tar -zcvf demo.tar.gz demo # 压缩demo文件夹为demo.tar.gz
tar -zxvf demo.tar.gz # 解压
rz -e 文件名
2.使用sftp
# 终端右键,选择“新建远程连接”
sftp root@ip
put 本地文件夹 远程路径6.python环境搭建(pyenv)
# 首先需要先安装git等依赖包
yum -y install git gcc make patch zlib-devel gdbm-devel openssl-devel sqlite-devel bzip2-devel readline-devel
# 安装pyenv
git clone https:///yyuu/pyenv.git ~/.pyenv
# 添加pyenv环境变量
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >>~/.bash_profile
echo 'eval "$(pyenv init -)"' >>~/.bash_profile
source ~/.bash_profile
exec $SHELL -l
# 安装pyenv virtualenv
git clone https:///yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
# 添加pyenv virtualenv 环境变量
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
source ~/.bashrc
exec $SHELL -l
# 下载python3.6.9环境
pyenv install --list #列出可安装版本列表
pyenv -versions # 列出已安装列表
pyenv install 3.6.9 # 安装3.6.9
# 基于python3.6.9搭建django2.2开发环境
pyenv virtualenv 3.6.9 django2.2Env
# 激活开发环境
pyenv activate django2.2Env7.django部署:nginx+uwsgi+channels+daphne
settings.py
ALLOWED_HOSTS = ['*,']
DEBUG = False开启django服务(开发模式)
python manage.py runserver 0.0.0.0:80uwsgi配置文件
uwsgi.ini
[uwsgi]
#使用nginx连接时使用
http = :8889 #直接访问时使用
# socket = 127.0.0.1:8889
#直接做web服务器使用 python manage.py runserver ip:port
#项目目录
chdir = /Users/water/gin/git/django_generator/autodata
# chdir = /root/django2/autodata
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file = autodata/wsgi.py
#指定启动的工作进程数
processes = 4
#指定工作进程中的线程数
threads = 2
#有一个主进程
master = True
#保存启动之后主进程的pid
pidfile = uwsgi.pid
#设置uwsgi后台运行,uwsgi.log保存日志信息
daemonize = uwsgi.log
#设置虚拟环境的路径
virtualenv = /Users/water/.pyenv/versions/django2.2Env
# virtualenv = /root/.pyenv/versions/django2.2Env/
##############################################
# 下面配置是使用dwebsocket模块时需要增加
# dwebsocket 配置,同时需要注释掉上面的 threads=2
async = 4
ugreen = True
http-websockets = True
DJANGO_SETTINGS_MODULE = autodata.settings
WEBSOCKET_FACTORY_CLASS = "dwebsocket.backends.uwsgi.factory.uWsgiWebSocketFactory"
# 在settings.py中增加
# uwsgi中websocket配置,只有使用uwsgi时才使用,使用manage.py模式时需要关闭
WEBSOCKET_FACTORY_CLASS = 'dwebsocket.backends.uwsgi.factory.uWsgiWebSocketFactory'uwsgi命令
# 启动服务
uwsgi --ini uwsgi.ini
# 停止服务
uwsgi --stop uwsgi.pid
pkill -f uwsgi -9daphne配置websocket
# 依赖的其他模块
/opt/python36/bin/pip3 asgiref==2.3.2
/opt/python36/bin/pip3 pyOpenSSL==19.1.0 #启用ssl必须模块
/opt/python36/bin/pip3 service-identity==18.1.0settings.py
# 在settings.py中增加
ASGI_APPLICATION = 'projectname.routing.application'asgi.py
# 在settings.py同级目录中增加asgi.py,并录入以下内容
import os
import django
from channels.routing import get_default_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "boamp.settings")
django.setup()
application = get_default_application()daphne运行
daphne -b 0.0.0.0 -p 8888 autodata.asgi:applicationnginx配置
# nginx在docker中的启动命令,闪退一般是由于配置文件中有问题导致的
docker run -it --name nginx-auto -d -p 80:80
-v /Users/water/gin/git/docker/nginx/nginx.conf:/etc/nginx/nginx.conf
-v /Users/water/gin/git/docker/nginx/docker_nginx_data/log:/var/log/nginx
-v /Users/water/gin/git/docker/nginx/dokcker_nginx_data/html:/usr/share/nginx/html nginx8.防火墙与端口
# 开放5672端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent
#关闭5672端口
firewall-cmd --zone=public --remove-port=5672/tcp --permanent
# 配置立即生效
firewall-cmd --reload
# 查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
# 关闭防火墙
systemctl stop firewalld.service
# 打开防火墙
sudo systemctl start firewalld
# 查看防火墙状态
firewall-cmd --state
systemctl status firewalld
# 查看监听的端口
netstat -lnpt9.svn版本管理
# svn安装
yum install subversion
# svn下拉代码到/root/autodata
svn checkout svn://192.168.29.97/测试和测开/06测开文档/02框架及工具/autodata/autodata /root/autodata
















