阿里云Ubuntu服务器通过uWSGI和Nginx部署Django项目的参考教程
我一直认为项目部署是学习中的一个难点,也是学习过程中必须要跨过的一道坎。 毕竟生产环境和本地单机环境差别很大。 在本地运行良好的项目在vps上运行不佳。 一定工作正常。 在生产环境中,不仅要多考虑安全因素,还要考虑网站未来应对大流量的能力。 网上部署教程很多,但是坑也很多,没有一个是十全十美的。 今天决定自己写一篇在阿里云服务器上部署项服务器程。 采用经典+架构组合,完全胜任中大型项目的开发。 本教程中的内容和配置可以重复使用,注意收藏。
作为服务器前端,它接受来自客户端的所有请求并统一管理。 自己处理所有的静态请求(静态文件处理是强项),然后把所有非静态请求都交给处理,这样就完成了一个web请求。
部署环境
阿里云服务器版本16.04(),3.X。 如果您是首次购买阿里云服务器,您应该执行以下操作:
1.配置安全组
2.设置远程连接密码-重启服务器
3、本地安装通过SSH(相当于FTP)连接服务器,方便上传和查看文件。
同时,你还需要知道购买的服务器的公网IP,这样就可以直接通过互联网查看项目是否部署成功。
升级和 pip 的第一步
新购买的16.04服务器自带2.7版本,pip版本为8,需要先使用以下命令升级pip版本。
sudo apt-.5 # 安装
sudo apt-get -pip # 安装 3-pip
sudo rm /usr/bin/ # 删除版本 2.7
sudo ln -s /usr/bin/.5/usr/bin/ # 将链接到最新版本 3.5
pip3 -- pip # 升级 pip
pip3 -- #查看pip版本
第二步创建用户
阿里云默认给你的登录用户是root,没有密码。 建议先创建个人用户,这里以enka为例。 创建完成后,在/home/目录下会发现一个enka文件夹。 注意新创建的enka用户没有sudo权限,必须先赋予其sudo权限才能执行后续命令。
• 创建用户:enka,连续输入密码两次。
• 授予sudo权限:sudo vim /etc/ 或者,添加一行enka ALL=: ALL。按ESC进入命令行,这里需要使用:wq! 写入并保存
• 将用户切换到 enka:su – enka
第三步,创建虚拟环境
每个独立的项目都有自己的依赖项。 在创建项目之前,我们应该创建一个虚拟环境,并在虚拟环境中进行安装。 这不是建议,而是必需的。 不断输入以下项目命令后,会发现在/home/enka/目录下多了一个子目录Env阿里云服务器安全,专门用来存放虚拟环境信息。
• sudo pip
• echo "THON=/usr/bin/" >> ~/.
• echo "=~/Env" >> ~/.
•echo "/usr//bin/.sh">> ~/.
• ~/.
在这个例子中,我们不仅安装,而且安装,并将配置信息输入到 . 文件。 这里的 . 文件用于存储和加载您的终端配置和环境变量。 现在你可以使用以下命令来创建、终止和切换虚拟环境,这比使用 /bin/venv/ 等命令来激活和管理虚拟环境要方便得多。
•t #创建虚拟环境
• #退出虚拟环境
• #切换到虚拟环境
第四步安装
使用t命令创建了一个名为 的虚拟环境后,就可以在这个虚拟环境中进行安装了。
• pip #
安装完成后,cd到/home/enka目录下,使用sudo命令创建文件夹名为(建议与虚拟环境名称和本地项目名称保持一致)。 这个项目文件夹的地址是/home/enka/,这里会存放代码。 这时候可以通过git在线获取项目代码,或者在这里上传本地项目代码。 (注意:如果您没有现成的项目代码阿里云服务器安全,您也可以使用-.py在线创建一个项目。)
项目代码到位后,连续输入以下命令,然后访问公网ip地址:8080,应该可以看到你的项目上线了。
•-.txt #安装依赖文件
• .py #创建超级用户
• .py
• .py #生产数据表
• .py #收集静态文件
•.py 0.0.0.0:8080
注意,在运行项目之前,请确保在 .py 中设置了 =os.path.join(, "/") 和 = ['r_IP'] 。
第五步安装并添加到系统服务中
第四步,我们仍然使用命令来运行服务器。 现在我们将安装并使它成为服务器。 使用命令退出虚拟环境后,使用pip进行安装。 然后使用命令进入虚拟环境,在虚拟环境中再次安装,测试是否安装成功。 (注意:需要安装两次。)
• pip # 安装
• -- # 查看版本
安装成功后,可以使用如下命令启动项目,也可以使用Ctrl+C退出。
发表评论