阿里云ubuntu16.4服务器部署python3.6.2+django1.11.3网站的全过程,精细讲解,本人亲测!
首先,部署用到的技术:
ubuntu命令行语句
anaconda3 语句
python 命令行语句
mysql 命令行语句
pycharm 操作经验
navicate 操作经验
阿里云
购买阿里云:云服务器 ECS。尽量便宜弄到手,学生价/免费抢/折扣购买
买完后打开阿里云管理控制台,如下图,画圈的是叫你多留心一下~
接下来就是连接了,你可以下载Xshell or PuTTY,用来连接,或者使用上图的远程连接
注意:修改了云服务器root的密码了,记得要重启一次云服务器。
阿里云购买完成并且连接成功后,是下图的效果
我用的PuTTY,上图是连接成功的界面
接下来安装Python环境
你需要使用conda吗?如果需要的话,跳过这一步,下面有安装conda的教程哦~
在连接的终端输入:
sudo apt-get upgradesudo wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz(保存至当前目录, 推荐下载保存与安装的目录为/root)
下载完毕后,解压安装:
tar -zxvf Python-3.6.2.tgzcd Python-3.6.2sudo ./configuresudo makesudo make install
输入python3进入pyhton交互界面,说明安装成功了。
使用Pycharm上传项目
你也可以使用 linux与windows之间连接的软件传递你的项目到服务器,软件如: Xftp, WinSCP
你也可以先上传到github再在服务器上下载项目。
这里使用pycharm,首先是一个叫VcrTStore的项目,如下图:
然后点击pycharm上面的的Tools > Deployment > Configuration,
然后新增连接,让pycharm连接到你的服务器,连接的配置如下图:
然后选择项目存放的文件夹,建议在服务器端的 用户的文件夹内 mkdir(创建)一个文件夹,我是在root文件夹下创建了一个VcrTStore文件夹
选择的步骤如下图:
点击ok后,再次点击Tools > Deployment 你就会发现,有 Upload to VcrTStore 这个选项,
这个选项就是用来上传项目的,点击即上传项目,
上传过程中,pycharm会在底部有有一个上传进度条,我们只需要等待上传完成即可,
Deployment中还有一些好用的选项,如同步代码,下载代码等,可以实现边开发边提交的开发模式。
提示:
Upload to VcrTStore completed: *** files transferred 则表示上传成功。
小知识:
使用 Upload to VcrTStore 的时候,是右侧project管理器 点击了哪个文件/文件夹就上传哪个哟~
要上传整个项目,需点击项目最外层文件夹。
安装mysql
请看博客:ubuntu 安装 mysql
配置mysql
请看博客:ubuntu 配置 mysql
亲测有效,还有,关于mysql8的配置,变化不是很大。
打开阿里云访问端口
首先,在阿里云的云服务器控制台,就是图一那个界面,点击 更多 > 网络和安全组 > 安全组配置
然后点击配置规则,就会打开如下图一样的界面
上图三个是默认的,我们需要创建一些规则,点击 快速创建规则
如下图,是我创建的规则,0.0.0.0/0 是允许所有哦~注意下
有些端口,快速配置无法满足?比如像 django 的 8000,memcached 的 11211,
如何再添加一些端口呢,就是 点击 添加安全组规则 按钮。
8000/8003的意思是,允许 8000, 8001, 8002, 8003 端口,其实是表示范围,
说的是我的配置:
这些工作做好了,就完成了,emmmmm,1/3了吧。
远程连接mysql
我们即将在windows上远程连接我们在阿里云服务器里安装的mysql数据库,
我使用的是navicate,连接配置如下图:
连接成功后,就是创建一个数据库了,与你项目用的数据库同名,我的是vcrtstore。
同步数据到远程数据库
右键点击本地的vcrtstore数据库,然后选择 转储sql文件>结构和数据,
选择一个文件夹保存,保存为vcrtstore.sql,这样原数据和表就备份好了,
然后右键服务器的vcrtstore数据库,选择 运行sql文件, 运行 vcrtstore.sql文件
效果如下图:
这样,阿里云那边的mysql也就有了我们本地的数据了,是不是感觉本教程讲得很详细呢?mua~
新建虚拟环境 or 不需要虚拟环境
你可以选择建一个Pyhton的虚拟环境,也不可以不建,
如果你要建的 话 呢,自己去找教程吧!
不过我使用的是Anaconda,小conda 还是很好用的,可以使用多个python版本,比如python2.7啊,python3.7啊, python3.6.2啊!
下载Anaconda :
sudo wget https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh
这里有个anaconda的安装教程 (ubuntu) >>
这里有一个知乎的关于Anaconda安装与使用的教程 (在图形界面上安装conda的教程,以命令行形式使用conda的教程)>>
小知识:
修改bashrc:sudo vim ~/.bashrc
迁移Python包到服务器上
在本地命令行中,执行一个命令:pip freeze > package.txt
这样django项目要用到的包的信息就打包好了,然后将这个package.txt 文件传到 服务器中,可以使用pycharm,也可以使用第三方软件~
然后,在服务器中,并且在Python虚拟环境下,执行命令:pip install -r package.txt
下载完成后,包就迁移成功了~
在本地访问一下服务器上的项目
首先,更改一下django中mysql的连接参数 'HOST': '39.107.96.126' (阿里云服务器的ip)
其次,更改 ALLOWED_HOSTS = ['*'] (允许任何ip访问项目)
我是在本地pycharm里改的,改完upload到了服务器里面。
然后,在服务器的命令行中使用 python manage.py runserver 0.0.0.0:8000 启动项目
最后,在本地浏览器里输入 http://39.107.96.126:8000
当当当当,本地浏览器就可以访问服务器上的项目啦~
如下图:
其实,到这里,稍微懂点的同仁已经知道如何去部署项目了
但是,如果不懂也没关系,因为我们还有教程呐~
Pycharm远程调试代码
这个,其实还是蛮重要的~
点击pycharm上方的 file > settings > Project:VcrTStore > project interpreter
效果如下图:
点击第5步的 Add ,
然后 Add remove,点击ssh credentials,
有的pycharm版本呢,没有Add remove,这些版本使用的是 ssh interpreter
add remove 与 ssh interpreter 的配置差别不是很大!
我嘛,使用的是ssh interpreter 的这种,如下图:
配置连接后,配置一些目录
interperter表示配置python的目录,我使用的是anaconda的虚拟环境
sync folders(也是Path Mapping)表示你要寻找到django项目的根目录
效果如下图:
配置好后,点击 apply, 点击 ok,然后等待调试环境加载完成。
然后,点击pycharm上方栏的 run > debug > edit configrations
配置一下 debug 的启动,如下图:
这样你的项目就 debug 启动啦~
你可以在本地pycharm打断点调试项目了啦~
啦啦啦~
前端是Vue项目,配置使用django作为代理启动
这里的是一个前后端分离的项目,前后端调试好了的,
如果不使用django作为代理启动or不是前后端分离的项目,这一步可以跳过!!!
首先,打包一下vue的静态文件,在vue项目的根目录开启一个命令行,
输入命令: npm run build
完成后会在根目录下生成 dist 文件夹,里面有 static、index.entry.js、index.html
其次,将index.html 拷贝,放入django的 template 文件夹中,
将index.entry.js 拷贝到django的 static 文件夹中,
将vue项目下的 static 文件夹内部的东西,拷贝到 django的 static 文件夹中
接着,将 STATIC_URL 、STATICFILES_DIRS 配置到settings.py中,
拷贝后的结果,如下图:
找不到django的 template or static 文件夹???说明你是一个新手,啦啦啦~
然后,记得将 index.html 里面引用script的src属性改一下哦
改成:
src="/static/index.entry.js"
切记切记,
最后,配一下 django 的 urls.py,
这是 urls.py 中的部分代码:
from django.views.generic import TemplateViewurlpatterns = [url(r'^index/', TemplateView.as_view(template_name='index.html')),
]
如果你使用了pycharm远程代码调试,记得 Upload 一下更改哦~
emmmmmm,我们来访问一下,http://xx.xxx.xx.xxx:8000/index
报Template错误???报static错误???自行百度解决,over~
Niginx + Uwsgi 部署 Django项目
部署步骤的话,emmm,百度一下。
这里会有坑,如果用anaconda 创建的虚拟环境,安装 uwsgi 时,
会报错:uwsgi: error while loading shared libraries: libpcre.so.1: ..........
这里有个anaconda 安装 uwsgi 的教程: uwsgi + django(anaconda)服务器配置 lto 版本错误解决
部署django的话百度一下,帖子一大把!!!我这边的话呢!就省略了~
阿里云购买域名
接下来就是域名解析环节了,django部署了呢,应该监听端口 80,
然后去阿里买个域名
如下图:
我已经买了一个,9元的,
这里说一下哈,千万别注册掉我的域名vcrting.com/vcrting.cn/vcrting.site/vcrting.online等等,
各位大哥哥小哥哥大姐姐小妹妹们,千万千万千万别注册掉我的域名
域名也需实名认证,是学生或者个人的话千万别买.com/.cn结尾的域名,要去备案的!!!不嫌麻烦的话就随意喽。
点击 解析 按钮,进入这个页面:
这里没有域名的解析记录对吧,我们点击 右边 的 添加记录 按钮
如下图:
记录值是 你的云服务器的 ip ,不包括端口,所以我们django项目的监听端口应该设置为 80
设置完就是这样的:
所以呢,接下来就可以使用 www.vcrting.fun 来访问我的网站了 哈哈哈哈哈哈哈哈哈~
访问一下试试
md 怎么这样!???????!!!!
还是要备案,我们进入阿里的备案界面:
点击进入备案系统,
然后填写一下备案资料喽~
然后还要一个备案服务号:
点击 红的 文本框下面的获得备案号,去获得一个备案号
这里的话呢!其实我嘛,踩了一个坑,
为什么是坑,因为实例要买满3个月后,才能申请备案号!!!!!!!!!!!!
如图:
额,没关系,没关系,没关系啦,不就3个月嘛,掏个钱包的事儿,有什么关系呀。。。。。
提醒:
个人域名备案需要用到的东西:
身份证-正面图、
身份证-反面图、
户口本/临时居住证-正面图、
户口本/临时居住证-反面图、
网站真实性验核单。
我们还是可以通过 http://xxx.xxx.xxx.xxx/index 来访问的嘛!
如图:
写到这里呢,就差不多该结束了,哎,想想这一路收获也蛮多的,收获最大的应该就是“ 阿里云服务器要满3个月才能备案 ”这个知识点了,祝愿读这篇帖子的学者同仁们都能成功部署好自己的项目~
阿里云ubuntu16.4服务器部署python3.6.2+django1.11.3网站的全过程,精细讲解,本人亲测!相关推荐
- 使用阿里云流水线功能一键部署到服务器
文章目录 常见的部署方式介绍 部署流程 代码库在阿里云上的情况 代码库不在阿里云上的情况 部署步骤 打开云效流水线 新建流水线 配置代码源 关联第三方仓库 新建服务链接 选择仓库 选择代码分支 选择部 ...
- 阿里云linux centos 一键部署web环境--图文详解
阿里云linux centos 一键部署web环境--图文详解 标签: linux阿里云一键部署 2017-04-15 12:28 386人阅读 评论(0) 收藏 举报 分类: linux(11) ...
- [Linux]阿里云免费试用体验(在阿里云的ubuntu上部署个人服务)
作为一个IT界的人,一般都希望有一个独立的博客,或者一部独立的机器.所以我一直在找机会,拥有一台自己可以独立控制的机器,自己想干嘛干嘛.当然这在虚拟机或者自己的PC上面也可以实现,但是这跟一台一直开着 ...
- 在阿里云的ubuntu上部署个人服务
为什么80%的码农都做不了架构师?>>> 作为一个IT界的人,一般都希望有一个独立的博客,或者一部独立的机器.所以我一直在找机会,拥有一台自己可以独立控制的机器,自己想干嘛干嘛.当然 ...
- 搭建阿里云Linux版服务器+使用docker安装EMQ、Node-RED、MySQL+本地Navicat访问数据库(增删改查)——详细流程
搭建阿里云Linux版服务器+使用docker安装EMQ.Node-RED.MySQL+本地Navicat访问数据库 云服务器基础搭建 注册云服务器 XShell简介 部署EMQ 部署docker 物 ...
- c 访问阿里云mysql_本地怎样访问阿里云mysql数据库服务器
全网最新活动请看下方内容或右侧内容! --------------- 本地怎样访问阿里云mysql数据库服务器,在阿里云上放数据库. 对于大多数小型或初期项目来说,我们可能常用的做法是先将web.数据 ...
- 阿里云服务器配置环境和部署项目
阿里云服务器配置环境和部署项目 一.连接阿里云服务器: 登陆阿里云,进入控制台,在控制台可以看到一些我们的信息. 然后进入云服务器ECS: 进来之后可以看到我们购买的服务器的各项信息了. 点击云服务器 ...
- 阿里云centos7下环境部署和项目部署
阿里云centos7下环境部署和项目部署系统环境: 阿里云centos7系统 linux下的jdk1.8 linux下的tomcat8 linux下的mysql5.7 jdk1.8的安装 下载jdk官 ...
- 在本地Win10系统映射云服务器为网络驱动器——阿里云搭建samba服务器
目的: 通过window系统的映射网络驱动器,将阿里云服务器的开发目录映射到window系统上,这样就可以在window系统上编写代码,然后通过Xshell终端上编译运行,极大提高码代码方便性! 方法 ...
最新文章
- ios 自动布局框架
- [repost]Xcode因为证书问题经常报的那些错
- Stanford UFLDL教程 自编码算法与稀疏性
- OpenLDAP、什么是目录服务、OpenLDAP简介、LDAP的基本模型、目录树概念、(DC、UID、OU、CN、SN、DN、RDN、c、o)、LDAP的使用
- 关闭窗体后,进程仍然在运行的问题重现与解决
- ubutun安装MySQL hive配置_Hive安装以及部署(Ubuntu-MySql)
- 03、CustomRegions
- MySQL中的information_schema
- 18kw丹佛斯变频器常见故障_变频器常见故障——输出不平衡、过载、开关电源损坏...
- svn 命令的使用(在linux下)
- python网页抓取与按键精灵原理一样吗_独家 | 手把手教你用Python进行Web抓取(附代码)...
- android设置动画循环播放,Android动画之AnimatorSet如何循环执行
- 人脸识别打卡项目(7)
- 服装尺寸 html,国家标准规范服装尺寸表.doc
- GIT无法提交到码云。原因可能是所在提交位置不对
- 机器人搭建记录 HoshinoBot
- 职业发展,选择大都市还是回老家?
- win10安装steam有损计算机,win10系统steam磁盘写入错误怎么办 steam磁盘写入错误的解决教程...
- 流放者柯南rust_《流放者柯南》评测8.0分 胯下生风的沙盒生存游戏
- MATLAB下载libsvm,以及对应MinGW-w64版本下载(亲测有效)