阿里云服务器怎么运行node
到小鸟云购买云服务器
作为一个穷逼+不熟悉服务器配置的菜鸟。选了最便宜的套餐: CPU: 1核 / 内存: 1024 MB / 带宽:1Mbps / 操作系统: CentOS
70 购买环节会设置 ssh 登陆密码,记下密码。 登陆到小鸟云,查看购买的实例。 注意公网 IP,下一步会用到
2 登陆服务器 sudo ssh 你的服务器ip地址
提示输入mac的密码,提示输入服务器密码。 输入后连接成功并显示服务器信息,如下:
登陆服务器后。这里对于我这个 Linux 菜鸟有个大坑………就是 Linux 系统常见的目录结构和文件放置区域。 使用 root
用户身份登陆后,会直接进入到下图 红色箭头标出的 root 目录下。先 cd 跳转到上一层, 再 ls -a
,就可以看到类似下图的目录结构了。
3安装 node 和 mongodb
node – 编译后二进制文件应在/usr/local/bin/node 下 mongodb –安装在/usr/local/mongodb 下
下面就一步一步来,首先升级CentOS
yum -y update1
升级后,跳转到 /usr/local/src , 这个文件夹通常用来存放软件源代码
cd /usr/local/src1
下载 nodejs 代码,也可以使用scp命令直接上传,因为下载实在太慢了。
wget http://nodejsorg/dist/v0125/node-v0125targz//注根据最新版本号为准12
解压
tar -xzvf node-v0125targz1
进入解压后的文件夹
cd node-v01251
执行配置脚本来进行编译预处理
/configure1
编译源代码
make//注这个时间可能会很久12
当编译完成后,需要使之在系统范围内可用,
编译后的二进制文件将被放置到系统路径,默认情况下,Node二进制文件应该放在/user/local/bin/node文件夹下
make install1
安装 express 和 forever,这两个模块都推荐 global 安装
npm -g install express forever1
建立超级链接, 不然 sudo node 时会报 “command not found”
sudo ln -s /usr/local/bin/node /usr/bin/nodesudo ln -s /usr/local/lib/node
/usr/lib/nodesudo ln -s /usr/local/bin/npm /usr/bin/npmsudo ln -s
/usr/local/bin/node-waf /usr/bin/node-wafsudo ln -s /usr/local/bin/forever
/usr/bin/forever12345
Nodejs到这里就基本安装完成了。
下面来安装mongodb
软件安装位置:/usr/local/mongodb 数据存放位置:/var/mongodb/data
日志存放位置:/var/mongodb/logs
首先下载安装包
cd /usr/localwget
http://fastdlmongodborg/linux/mongodb-linux-x86_64-249tgz12
解压安装包,重命名文件夹为mongodb
tar zxvf mongodb-linux-x86_64-260tgzmv mongodb-linux-x86_64-260
mongodb12
创建数据和日志存放目录
mkdir /var/mongodbmkdir /var/mongodb/datamkdir /var/mongodb/logs123
打开rclocal文件,添加CentOS开机启动项:
vim /etc/rcd/rclocal1
将mongodb启动命令追加到本文件中,让mongodb开机自启动:
/usr/local/mongodb/bin/mongod --dbpath=/var/mongodb/data --logpath
/var/mongodb/logs/loglog -fork12
关闭 vim 后,直接手动启动mongodb
/usr/local/mongodb/bin/mongod --dbpath=/var/mongodb/data --logpath
/var/mongodb/logs/loglog -fork12
看到类似的信息,说明已启动成功。我在这里发了个傻,以为26308是port号,导致后面设置port时折腾了好久。其实这里的 forked
process 和 port 号是两个东西, 这个是程序本身在Server上的进程。
forked process: 263081
启动mongo shell
cd /usr/local/mongodb/bin//mongo12
在 mongo shell 中创建管理员及数据库
use admin //admin 数据库dbcreateUser({user:
"用户名",pwd:"登陆密码",roles:["userAdminAnyDatabase"]
//超级管理员})use databaseFoo //nodeapp 要连接的数据库dbcreateUser({user:
"用户名",pwd:"登陆密码",roles:["readWrite"]
//读写权限})12345678910111213
到这里 mongodb 基本已经安装设置完成了。具体数据的迁移导入可自行研究。
4配置及启动node app
我们把 nodeapp 的程序放在 /home 下
不知不觉间,2019已经接近尾声,在这一年里,我们看到了很多技术的长足发展,其中就包括NodeJS,它已经变得越来越流行,NPM上的各种功能模块(Package)的发布总数,也呈井喷之势,早早的就跨越了100万大关,成为了这个星球上最大的开源库集合。不
更令人惊喜的是,作为一种Web服务器端的技术,在2019年度,我们看到了业界,在基于NodeJS,构建健壮的内容管理系统(CMS)这一应用领域上的持续发力,一批充满现代意味、方便、实用的CMS产品被纷纷推出,下面所列的,则是在2019年度,被广泛使用的一些CMS产品,正在希望使用NodeJS,开发相关以内容管理为核心的网站的朋友,不妨可以关注下。
至于能不能像WordPress一样,成为一款现象级的CMS产品,就一切都要靠时间去检验了,拭目以待吧。
1 KeystoneJs
KeystoneJs是一款功能强大的NodeJs CMS框架。除了其本身提供了丰富而强壮的CMS基础功能外,KeystoneJs还可以用于开发RESTful API的应用、各种非CMS的应用程序,如电子商务平台或者在线论坛等。
特别的,KeystoneJs提供了简化的Admin UI,可帮助开发人员快速的创建美观但功能复杂的CMS后台管理功能。
KeystoneJs的其他一些主要特性如下:
KeystoneJS使用MongoDB数据库进行数据存储,并借助于Mongoose实现了有效的对象文档映射(ODM)。
通过KeystoneJS MVC架构,并使用KeystoneJS的内置模板,可以快速的构建基于数据的相关页面呈现功能。
只需要少量的一些工作,开发人员就能在KeystoneJS的基础上,实现自定义的路由,并实现各种定制功能的开发。
KeystoneJS非常轻量级,同时为数据库管理提供了丰富的API,这对于构建面向内容的网站来说,是非常重要的。
2 Ghost CMS
如果在几年前,以Ghost为代表的Headless(无头类)类的CMS系统,还只是CMS中的一个不特别被人关注的分支的话,那么,2019年度,在CMS领域,最应该引起人关注的,就是Headless(无头类)类的CMS系统,已经蔚为壮观,渐成主流。
这一现象,反映了一个不争的现实,即:一个后台,多种前端,已经越来越成为了业界基本的形态。
Ghost总体来说,更加适合于构建功能复杂的博客类平台,这也是为什么,一众公司,如苹果(Apple)、天空新闻(SkyNews)等都使用Ghost CMS的原因所在。
首先,Ghost的整体设计是非常干净,简单,舒适的,几乎零配置就能拥有非常友好的内容编辑接口。
其次,Ghost内置了强大的SEO功能。您可以在Ghost里,就准备好所有的站点地图、元数据、AMPs、规范标记等等等等和SEO相关的内容。
3 Strapi CMS
了解了Ghost的优雅,不妨来认识下另一个,在2019年度发展堪称迅猛的框架:Strapi CMS!
和Ghost一样,这也是一个Headless的CMS框架,它为开发人员提供了一个强大的、自托管的、高度可定制的内容API系统。
因此,Strapi非常适用于开发系统级别的、具有良好配置、易于管理的Web和移动端应用程序。
0条评论