摘要:还有需要配置安全组,在阿里云控制台中进行配置,添加和端口,才能够访问到线上服务器。
在搭建web全栈的过程中,最令我头疼的就是项目的部署与上线,这个过程虽然简单,但是对于全栈菜鸟的我来说真的是个大坑,但是我还是去尝试,终于通过各种文档、请教与实践中完成了线上部署,在此做一下记录与总结一、购买服务器
服务器选择:服务器的品牌有很多,如亚马逊、阿里云、腾讯等等,各大厂商之间的产品、服务各不相同,但请尽量选择靠谱的产品,在这里我选择的是阿里云,因为阿里云的服务真的很及时,而且文档也写的很详细,有时候做活动,产品的价格还是不错的。
遇到不懂的问题可是先查看阿里云上的帮助文档
在询问了一些前辈之后,购买阿里云上的Linux系统会相对window server安全系数高一些,只是个人是使用window系统,需要去了解一下linux常用的命令语句
二、创建连接(实现本机和阿里服务器连接)将本机与服务器连接的方法有很多,具体请参考连接实例
windows环境的是无法直接连接linux系统的,需要在电脑上下载软件才可以,一般使用PuTTY与xshell(这个软件是收费的),阿里云上有PuTTY的使用方法,但我个人是使用xShell方法,感觉更加方便与快捷
主机: root
密码:就是在阿里云上设置的密码
三、格式化数据磁盘官网上对于非I/O优化实例需要格式化磁盘,个人的配置是I/O优化的,所以不需要配置这部分
四、配置秘钥配置秘钥是为了实现实例连接,更方便的操作服务器,通过分配不同权限来使不同的管理者来操作服务器上相应的功能
ssh的配置与github的配置相似。首先需要在服务器上生成".ssh"文件,然后一路回车,一般ssh会创建在/root的目录下
ssh-keygen -t rsa -b 4096 -C "xxx@xxx.com"
然后设置ssh代理:其代理 Agent pid 为 12607
eval "$(ssh-agent -s)"
创建授权文件: 这份文件只对当前的计算机起作用,编辑.ssh文件中的“authorized_keys”文件,保存后提示不能够读写该文件,就是权限不够,先按回车,进入到编辑页面,再“esc”,再同时按下“shift 加 :”,然后输入“q”退出,再进入就行了,(注:在要操作的当前目录下可以不用sudo与该目录路径)。打印本机的公钥“id_rsa.pub"
授权文件并重启实例
chmod 600 authorized_keys sudo service ssh restart五、搭建node环境
更新系统
sudo apt-get update
安装相关的模块与包文件:如git、wget等,可以根据项目需求进行安装
sudo apt-get install git vim open ssl build-essential libssl-dev wget curl
node在服务器上安装可以借助nvm,这个插件依赖于wget模块,执行下列命令。安装完成之后会提示需要再开一个shell窗口,才可以看到nvm版本信息
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
使用nvm安装node版本:版本号可以自己选择,建议安装稳定版本会比较方便维护
nvm install v8.9.0
全局安装淘宝镜像,能够使npm的下载速度更快,安装完淘宝之后还得告诉系统我们增加这个文件
# 淘宝镜像 npm --registry=http://registry.npm.taobao.org install -g npm # 安装文件 echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p # 安装cnpm npm --registry=http://registry.npm.taobao.org install -g cnpm
搭建好了nodejs环境之后,可以先尝试自己搭建服务器,检查一下服务器时候可以运行,在搭建服务器的过程中,我个人遇到了防火墙与安全组问题:ubuntu默认了安装的时候是没有配置防火墙的,需要自己配置防火墙。还有需要配置安全组,在阿里云控制台中进行配置,添加ip和端口,才能够访问到线上服务器。
可以使用pm2对阿里上的服务器进行监管,每次上传文件之后,记得重启
六、设置反向代理ngnix安装ngnix
sudo apt-get install nginx
安装完后,其目录在/ect/nginx,及其目录文件
编写nginx的配置文件,当有多个项目对应到多个服务的时候,需要使用nginx使服务实现负载均衡,写的这个.conf配置文件都会被加载到“/nginx.conf”这个文件夹下,在配置server_name的时候直接写ip地址就行。也可以参考这篇文章nginx配置文件详解
upstream shop { # Nodejs app upstream server 127.0.0.1:9527; } # Server on port 80 server { listen 80; server_name 47.52.43.40; //个人IP地址或者域名 location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_responses 0; proxy_set_header Connection "upgrade"; proxy_max_temp_file_size 0; proxy_pass http://47.52.43.40:9527; #设置反向代理较为重要的一个参数,将本地端口9527转向server通用入口80端口 proxy_redirect off; proxy_read_timeout 240s; } }
测试配置文件: 当出现ok与success时说明配置的文件配置成功
sudo nginx -t
重启nginx
nginx reload七、安装mongodb
mongodb官网上有ubuntu环境下配置mongodb环境的详细步骤
# 导入共有钥匙为包管理系统使用 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 # 为mongodb创建一个列表文件(根据ubuntu版本不同,配置也不一样,在此演示的是Ubuntu14.04版本) echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list #更新数据库 sudo apt-get update #安装mongdb(这是安装最新版本的) sudo apt-get install -y mongodb-org # 启动mongod数据库 sudo service mongod start
当连接数据库出现问题时,可以查看在mongdb.log日志
mongodb的默认端口是27017,如果想要更改mongodb的端口可以在mongod.conf文件中进行更改端口,而且需要修改防火墙iptable中的规则,启动mongodb的时候需要加端口号
mongo --port 端口号八、上传文件
对于服务器的基本环境已经配置完成,便可以上传文件了,在这里推荐一个上传文件的工具filezilla,主机是ip地址,用户名为root,端口号为22,然后找到本机的文件与在服务器上的文件目录,便可直接上传。
服务端上传文件后需要安装依赖,前端需要将项目打包
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/39788.html
摘要:摘要阿里有很多的研发团队,不同事业部使用的发布流程分支策略并非整齐划一,但总体上看是比较规整的。引言在阿里内部,流行着许多有意思的工程实践。比如分支管理这件事,其实属于工具和习惯各占一半,并且颇有阿里特色的成分,适合作为一个例子。 摘要: 阿里有很多的研发团队,不同事业部使用的发布流程、分支策略并非整齐划一,但总体上看是比较规整的。其中有一种主流的发布模式以及对应的分支使用方式,称为A...
摘要:摘要阿里有很多的研发团队,不同事业部使用的发布流程分支策略并非整齐划一,但总体上看是比较规整的。引言在阿里内部,流行着许多有意思的工程实践。比如分支管理这件事,其实属于工具和习惯各占一半,并且颇有阿里特色的成分,适合作为一个例子。 摘要: 阿里有很多的研发团队,不同事业部使用的发布流程、分支策略并非整齐划一,但总体上看是比较规整的。其中有一种主流的发布模式以及对应的分支使用方式,称为A...
阅读 957·2022-06-21 15:13
阅读 1847·2021-10-20 13:48
阅读 1027·2021-09-22 15:47
阅读 1364·2019-08-30 15:55
阅读 3112·2019-08-30 15:53
阅读 519·2019-08-29 12:33
阅读 711·2019-08-28 18:15
阅读 3458·2019-08-26 13:58