ubuntu18 apache2 wsgi django pyenv virtualenv 搭建 https websocket 网站
部署django项目步骤比较繁琐。
- https双向认证 :服务器、客户端双向认证,通过安装自签名证书互相验证身份;
- websocket :使用channels库实现,再套一层ssl增加安全性;
- apache2+wsgi+虚拟环境 :wsgi进程守护,由于项目中改动了celery源码,需要独立虚拟环境。
文章目录
一、ubuntu环境
win10系统,使用vmware安装了ubuntu18服务器版,为方便项目部署,共享了d盘。
注意:挂载不能使用open-vm-tools,不然只有超级用户能访问挂载目录
VMware->虚拟机->安装VMware Tools
解压VMwareTools-xxx.tar.gz运行vmware-install.pl
sudo mount -t iso9660 /dev/cdrom /mnt
./vmware-install.pl
本地源
如果部署环境没有网络,需要创建本地源
在开发环境执行下列命令,制作离线包
sudo mkdir /offlinePackage
sudo cp -r /var/cache/apt/archives /offlinePackage
sudo chmod 777 -R /offlinePackage/
sudo apt-get install dpkg-dev
sudo dpkg-scanpackages /offlinePackage/archives/ /dev/null |gzip >/offlinePackage/Packages.gz
sudo cp /offlinePackage/Packages.gz /offlinePackage/archives/Packages.gz
tar cvzf offlinePackage.tar.gz /offlinePackage
在离线部署环境,设置本地源生效
sudo tar -xvf offlinePackage.tar.gz -C /
sudo vim /etc/apt/sources.list
# 在sources.list中添加下行,并注释掉其他内容
deb file:/// offlinePackage/
# 执行update命令使本地源生效
sudo apt-get update ---allow-insecure-repositories true
--allow-unauthenticated
# 可能需要这个命令
apt-get update -f
二、pyenv pyenv-virtualenv python环境
使用虚拟环境可以多个不同环境的项目共存
1. 安装
官方文档:pyenv,pyenv-virtualenv
安装需要使用以下命令
# 从github克隆项目
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root